簡単に説明してください
私BlockingQueues
はスレッドセーフであることを知っています。
つまり、ブロッキングキューへの単一の参照を、単一のコンシューマーによって消費されるようにウィリーニリーにイベントをドロップできるすべてのプロデューサーに渡すことができ、何も中断されないということですか?
BlockingQueues
そうでなければ、定期的な更新がある場合とない場合がある最大20を生成し、それらを効率的に読み取る必要があることは、克服できない作業のように思われます。
簡単に説明してください
私BlockingQueues
はスレッドセーフであることを知っています。
つまり、ブロッキングキューへの単一の参照を、単一のコンシューマーによって消費されるようにウィリーニリーにイベントをドロップできるすべてのプロデューサーに渡すことができ、何も中断されないということですか?
BlockingQueues
そうでなければ、定期的な更新がある場合とない場合がある最大20を生成し、それらを効率的に読み取る必要があることは、克服できない作業のように思われます。
これは、ブロッキング キューへの 1 つの参照をすべてのプロデューサーに渡すことができるということですか?
一言で言えば、そうです。これは安全です。ドキュメントを引用するには:
BlockingQueue
実装はスレッドセーフです。すべてのキューイング メソッドは、内部ロックまたはその他の形式の同時実行制御を使用して、アトミックに効果を達成します。
スレッドセーフである場合、すべてのスレッドがアクセスできるそのキューのインスタンスが 1 つだけ必要であることを意味します。並行データ構造は、これらのアクセスを管理します。これは、ユーザー側からの同期が不要であることも意味します。