ホームページ >Java >&#&チュートリアル >ArrayBlockingQueue と LinkedBlockingQueue の違いは何ですか?
ブロッキング キュー インターフェイスは、Java.util.concurrent パッケージの一部です。ブロッキング キューはプロデューサー/コンシューマー キュー用に設計されており、コレクションもサポートしています。インターフェイスは、キュー上のあらゆる種類の操作をサポートするメソッドの 4 つの部分に分かれています。空のキーは受け入れられません。 ArrayBlockingQueue と LinkedBlockingQueue はどちらもブロッキング キュー インターフェイスを実装しています。
ArrayBlockingQueue と LinkedBlockingQueue はどちらも要素を FIFO 順に格納します。どちらのキューでも、要素の挿入は常にキューの末尾で発生し、要素の削除は常にキューの先頭で発生します。
キー | ArrayBlockingQueue | LinkedBlockingQueue | |
---|---|---|---|
Basic |
配列によってサポートされています |
Itリンク リストによってサポートされています。 Support |
|
Bounded |
有界配列キューです。したがって、作成後に容量を変更することはできません |
#これは無制限のキューです | #3 |
スループット | そのスループットはチェーン キューよりも低いです | チェーン キューはアレイベースのキューよりも高いスループットを持っています | 4. |
Lock | 単一ロックを使用します。アルゴリズム | ##キューに要素を挿入するための putLock と、キューから要素を削除するための takeLock があります
以上がArrayBlockingQueue と LinkedBlockingQueue の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。