/**
* 線程池:
* 主要特色:
* 線程複用,控制最大併發數,管理線程
* 第一:下降資源消耗,經過重複利用已建立的線程下降線程建立和銷燬形成的消耗。
* 第二:提升響應速度。當任務到達時,任務能夠不須要等待線程建立就能當即執行。
* 第三:提升線程的可管理性。線程是稀缺資源,若是無限制的建立,不只會消耗系統資源,
* 還會下降系統的穩定性,使用線程池能夠進行統一的分配,調優和監控。
*/
public static void main(String[] args) {
ExecutorService executorService=Executors.newFixedThreadPool(5);
//一池子5個工做線程,相似一個銀行有五個受理窗口
ExecutorService executorService1=Executors.newCachedThreadPool();
//執行很短時間異步任務,線程池根據須要建立新線程,但在先前構建的線程可用時將重用它們,可擴容,遇強則強
try{
//模擬有10個顧客過來銀行辦理業務,目前池子裏面有五個工做人員提供服務
for(int i=1;i<=10;i++){
executorService1.execute(()->{
System.out.println(Thread.currentThread().getName()+"\t辦理業務");
});
}
}catch(Exception exception){
}finally {
executorService.shutdown();
}
}
線程池工做原理:併發
線程的拒絕策略:異步