多執行緒 執行緒池執行多業務邏輯

2021-09-19 05:43:37 字數 642 閱讀 1222

/**

* 1.執行緒池執行不同的業務邏輯.

* 2.獲取每個任務執行的結果

* 3.最後的結果會用到之前的結果

*/public class searchuserlistdto catch (interruptedexception e)

system.out.println("111");

}});

//乙個執行緒池,三個執行緒,執行三個任務,只有當這三個任務執行完以後,主線程才會執行

executorservice.execute(new runnable() catch (interruptedexception e)

system.out.println("222");

}});

executorservice.execute(new runnable() catch (interruptedexception e)

system.out.println("333");

}});

//主線程阻塞,如果執行緒池之間也是需要前後結果的話,應該也是阻塞的

countdownlatch.await(); //只有當countdown變為0的時候,主線程才不是阻塞的

} finally

}

多執行緒 執行緒池

第一 降低資源消耗。通過重複利用已建立的執行緒降低執行緒建立和銷毀造成的消耗。第二 提高響應速度。當任務到達時,任務可以不需要等到執行緒建立就能立即執行。第三 提高執行緒的可管理性。執行緒是稀缺資源,如果無限制地建立,不僅會消耗系統資源,還會降低系統的穩定性,使用執行緒池可以進行統一分配 調優和監控...

多執行緒 執行緒池

執行緒池是什麼 執行緒池 thread pool 是一種基於池化思想管理執行緒的工具,經常出現在多執行緒伺服器中,如mysql。執行緒過多會帶來額外的開銷,其中包括建立銷毀執行緒的開銷 排程執行緒的開銷等等,同時也降低了計算機的整體效能。執行緒池維護多個執行緒,等待監督管理者分配可併發執行的任務。這...

多執行緒 執行緒池

執行緒池的作用 減少了每次建立 銷毀執行緒所帶來的損耗。執行緒池建立執行緒的簡易流程 文字描述 1 先判斷核心執行緒池 corepoolsize 是否已滿,沒滿就建立核心執行緒執行,滿了就進行下一判斷。2 判斷等待佇列 workqueue 是否已經滿了,沒滿就新增到等待佇列,滿了就進行下一判斷。3 ...