?? testproduct.java
字號:
package book.thread.product;
/**
* 測試生產者——消費者
* 支持多個生產者和消費者
*/
public class TestProduct {
public static void main(String[] args) {
//建立一個倉庫,容量為10
Warehouse warehouse = new Warehouse(10);
//建立生產者和消費者
Producer producers1 = new Producer(warehouse, "producer-1");
Producer producers2 = new Producer(warehouse, "producer-2");
Producer producers3 = new Producer(warehouse, "producer-3");
Consumer consumers1 = new Consumer(warehouse, "consumer-1");
Consumer consumers2 = new Consumer(warehouse, "consumer-2");
Consumer consumers3 = new Consumer(warehouse, "consumer-3");
Consumer consumers4 = new Consumer(warehouse, "consumer-4");
//啟動生產者和消費者線程
producers1.start();
producers2.start();
consumers1.start();
producers3.start();
consumers2.start();
consumers3.start();
consumers4.start();
//讓生產者消費者程序運行1600ms
try {
Thread.sleep(1600);
} catch (InterruptedException e) {
e.printStackTrace();
}
//停止生產者和消費者的線程
producers1.stopProducer();
consumers1.stopConsumer();
producers2.stopProducer();
consumers2.stopConsumer();
producers3.stopProducer();
consumers3.stopConsumer();
consumers4.stopConsumer();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -