ThreadPoolExecutor執行緒池的使用

2021-10-02 07:01:37 字數 625 閱讀 9201

threadpoolexecutor是最基礎的執行緒池類。executors裡面的各種執行緒池,都是由他演變而來。 學會它,可以說是以不變應萬變。

threadpoolexecutor的五個引數:

型別和名稱

描述int corepoolsize

核心執行緒池的大小

int maximumpoolsize

最大執行緒池大小,預設是integer.max_value

long keepalivetime

當執行緒池數量大於core時,這個時間內,如果沒有其他執行緒來使用多餘的執行緒,就會釋放,可以理解為是為了避免頻繁的啟動和停止執行緒

timeunit unit

keepalivetime 的時間單位,如timeunit.seconds

blockingqueue workqueue

阻塞佇列的具體實現

簡單的說就是5個:

coresize

maxsize

alivetime

timeunit

阻塞對列的具體實現

需求方 外層for迴圈

辦理視窗 執行緒池執行緒數量

單人需要資源數 n,可以通過總數和n計算,也可以通過訊號量

總資源 s

ThreadPoolExecutor的使用和介紹

1 類說明 newfixedthreadpool生成乙個固定的執行緒池,使用threadpoolexecutor 來構造,可以像tomcat的執行緒池一樣設定 最大執行緒數 最小執行緒數 和 空閒執行緒keepalive的時間 threadpoolexecutor public threadpool...

執行緒池ExecutorService 的使用

executes the given command at some time in the future.the command may execute in a new thread,in a pooled thread,or in the calling thread,at the discr...

ThreadPoolExecutor執行緒池原始碼解讀

主要變數 private volatile int corepoolsize private volatile int maximumpoolsize private volatile int poolsize 建構函式 也就是建立類的時候,需要注入引數。public threadpoolexecu...