我也是剛剛才學習的,不是很懂,網上看了看例子,都不懂,JDK自帶了一個例子。
class Producer implements Runnable {
   private final BlockingQueue queue;
   Producer(BlockingQueue q) { queue 
= q; }
   
public void run() {
     
try {
       
while(true) { queue.put(produce()); }
     } 
catch (InterruptedException ex) {  handle }
   }
   Object produce() {  }
 }

 
class Consumer implements Runnable {
   
private final BlockingQueue queue;
   Consumer(BlockingQueue q) { queue 
= q; }
   
public void run() {
     
try {
       
while(true) { consume(queue.take()); }
     } 
catch (InterruptedException ex) {  handle }
   }
   
void consume(Object x) {  }
 }

 
class Setup {
   
void main() {
     BlockingQueue q 
= new SomeQueueImplementation();
     Producer p 
= new Producer(q);
     Consumer c1 
= new Consumer(q);
     Consumer c2 
= new Consumer(q);
     
new Thread(p).start();
     
new Thread(c1).start();
     
new Thread(c2).start();
   }
 }
上面的代碼我也看了一整才看懂的。java的并發實際上就是利用隊列進行操作,如果對隊列和線程熟悉的話,那么這個也是比較簡單的,java并發是生產者和消費者得具體應用,第一個類負責生產東西放入到隊列中,第二個類用于從隊列中拿出東西進行操作。最后一個是用于測試的,啟動了一個生產的線程,兩個消費的線程。
 這個還可以和線程池進行結合現在我還不是很會,等會了再貼上代碼