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...