執行緒《二 執行緒的狀態 生命六週期》

2022-09-20 14:09:07 字數 918 閱讀 2713

1建立,2就緒,3終止

public class threadstate );

//建立 new

system.out.println(mythread.getstate());

mythread.start();

//就緒 runnable

system.out.println(mythread.getstate());

thread.sleep(1000);

//終止 terminated

4等待:使用jps檢視當前類執行的程序,jstack根據程序檢視執行緒的狀態

可以看到執行緒two是timed_waiting,one是waiting,timed_waiting和waiting狀態一樣,只是有乙個等待時間,一般呼叫如下方法時:sleep(),wait(),join(),locksupport.parknanos(),locksupport.parkuntil(),而且方法帶上時間則執行緒會出現這個狀態

二 執行緒的生命週期

新建 從新建乙個執行緒物件到程式start 這個 執行緒之間的狀態,都是新建狀態。就緒 執行緒物件呼叫start 方法後,就處於就緒狀態,等到jvm裡的執行緒排程器的排程。執行 就緒狀態下的執行緒在獲取cpu資源後就可以執行run 此時就是執行狀態。在這種狀態下可以轉變為就緒,阻塞,死亡。等待 阻塞...

多執行緒程式設計二 執行緒的生命週期

執行緒有5個狀態 建立狀態 thread thread new thread 就緒狀態 thread.start 執行狀態 cpu排程處於就緒狀態的執行緒時才是進入執行狀態 阻塞狀態 處於執行狀態中的執行緒由於某種原因,暫時放棄對cpu的使用權,停止執行,此時進入阻塞狀態,直到其進入到就緒狀態,才 ...

執行緒的生命週期狀態

第一步 新建狀態 使用new關鍵字新建執行緒,此時處於新建狀態 第二步 就緒狀態 當呼叫了該執行緒的start 方法,執行緒啟動,處於就緒狀態,但是不一定執行 第三步 執行狀態 需要考作業系統cup的排程執行,如果作業系統是搶占式排程,當執行緒搶占到了cup的執行許可權,執行緒開始執行 如果是分時排...