データ記憶構造を除いArrayBlockingQueueは、サイズを指定することができない、他のと一致しています
パッケージcom.dh.learn.queue; インポートjava.util.concurrent.BlockingQueue; インポートjava.util.concurrent.LinkedBlockingQueue; パブリック クラスLearnLinkedBlockingQueue { // 基礎となるリストが実装されている // ブロッキングモードとArrayBlockingQueueに一貫性が達成: // ReentrantLockのスレッドセーフ // )()(のawaitの条件条件のための単一のブロッキングキューを保証する 公共の 静的な 無効メイン(文字列[]引数)をスロー例外:InterruptedException { // リストのサイズを指定することができ、デフォルトはInteger.MAX_VALUE 31回指定されていない(2側-1) BlockingQueueの<文字列> = LinkedBlockingQueue 新しい新しい LinkedBlockingQueue <>(2); linkedBlockingQueue.put( "AAAA" )。 linkedBlockingQueue.put( "BBBB" ); 新しいスレッド(新しいRunnableを(){ @Override 公共 ボイドラン(){ しようと{ System.out.printlnは( "取值、使队列不满" ); linkedBlockingQueue.take(); } キャッチ(InterruptedExceptionある電子){ e.printStackTrace (); } } }))(始めます。 linkedBlockingQueue.put( "CCCC"); System.out.println(linkedBlockingQueue.toString())。 } }