1
gen_server
を実行している場合、Erlangは複数のコアを利用していますか? gen_server
に別の2つのhandle_cast
があり、頻繁に呼び出されている場合は並行して実行できますか?私は、handle_cast
の1つがキューにデータを入力し、もう1つが同じキューからデータを削除して処理するという設計があるからです。キューはgen_server
状態に保持されます。私が見ているように、問題は、状態を返すときに新しいキューを返さなければならないということです(新しいアイテムが追加されたり、取り出されたアイテムが削除された状態)。これらが並行して実行されている場合、キュー内で競合状態や不一致が発生する可能性があります。これは本当ですか?handle_cast、複数のコア、およびキュー