記住,是執行緒池的狀態,不是執行緒狀態。
狀態說明:執行緒池處在running狀態時,能夠接受新任務,以及對已新增的任務進行處理。
狀態切換:執行緒池的初始化狀態是running,換句話說,執行緒池一旦被建立,就處於running狀態,並且執行緒池裡面的數量為0.
狀態說明:執行緒池處在shutdown狀態時,不接受新任務,但能處理已經新增的任務。
狀態切換:呼叫執行緒池的shutdown介面,執行緒池由running——>shutdown
狀態說明:執行緒池處於stop,狀態不接受新任務,不處理已經新增的任務,並且會中斷正在處理的任務。
狀態切換:呼叫執行緒池的shutdownnow()介面,執行緒池由running,shutdown——>stop
狀態切換:當執行緒池在shutdown狀態下,阻塞隊列為空並且執行緒池中執行的任務也為空時,就會由 shutdown -> tidying。
當執行緒池在stop狀態下,執行緒池中執行的任務為空時,就會由stop -> tidying。
狀態說明:執行緒池徹底終止,就變成terminated狀態。
狀態切換:執行緒池處在tidying狀態時,執行完terminated()之後,就會由 tidying -> terminated。
執行緒狀態 執行緒池
1.執行緒狀態變遷 2.為什麼notify notifyall wait要在同步方法或塊中執行 2.1在j a中,所有物件都能夠被作為 監視器monitor 指乙個擁有乙個獨佔鎖,乙個入口佇列和乙個等待佇列的實體entity。所有物件的非同步方法都能夠在任意時刻被任意執行緒呼叫,此時不需要考慮加鎖的...
執行緒池的狀態
running 這是最正常的狀態,接受新的任務,處理等待佇列中的任務。執行緒池的初始化狀態是running。執行緒池被一旦被建立,就處於running狀態,並且執行緒池中的任務數為0。shutdown 不接受新的任務提交,但是會繼續處理等待佇列中的任務。呼叫執行緒池的shutdown 方法時,執行緒...
執行緒池 關於執行緒池的五種狀態
在threadpoolexecutor類中定義了執行緒的五種狀態表示,通過atomicinteger 的高三位來表示執行緒的狀態 private static final int count bits integer.size 3 private static final int running 1...