多執行緒的建立方式和執行狀態

2021-09-21 17:55:21 字數 1097 閱讀 3128

一:執行緒和程序的區別

程序是所有執行緒的集合,每乙個執行緒是程序中的一條執行路徑;

二:建立執行緒的三種方式

1.繼承thread類 重寫run方法

class creatthread extends thread 	}}

public class threaddemo

}}

2.實現runnable介面,重寫run方法

class creatrunable implements runnable 	}}

public class threaddemo1

}}

3.使用匿名內部類方式

public class threaddemo3 

}}).start();

; //主線程

for (int i = 0; i < 100; i++)

}}

三:多執行緒的執行狀態

1、新建狀態

new thread():當我們new乙個執行緒例項的時候處於新建狀態;

2、就緒狀態

start():當執行緒物件呼叫start()方法即啟動了執行緒,start()方法建立執行緒執行的系統資源,並排程執行緒執行run()方法。當start()方法返回後,執行緒就處於就緒狀態。,處於就緒狀態的執行緒並不一定立即執行run()方法,執行緒還必須同其他執行緒競爭cpu時間,只有獲得cpu時間才可以執行執行緒;

3、執行狀態

run():當執行緒獲得cpu時間後,它才進入執行狀態,真正開始執行run()方法;

4、阻塞狀態

sleep():執行緒通過呼叫sleep方法進入睡眠狀態等;

5、死亡狀態

(1) run方法正常退出而自然死亡;

(2) 乙個未捕獲的異常終止了run方法而使執行緒猝死;

執行緒的執行狀態

執行緒從建立 執行到結束總是處於5種狀態之一 分別是新建狀態,就緒狀態,執行狀態,阻塞狀態,死亡狀態。這5種狀態之間的轉換流程如圖 新建狀態 當成功建立乙個執行緒,但是還未呼叫start方法之前的狀態,例如 thread thread new thread new runnable catch in...

執行緒的執行狀態

1,建立 當建立好執行緒物件的時候,也就是new thread類或者是new thread子類的時候。此時稱為建立狀態 2,就緒 當執行緒物件呼叫了start 方法,開啟執行緒了的時候,此時的執行緒已經開啟了,隨時可能會被cpu執行,因為cpu一此只能執行乙個執行緒,當其他執行緒已經開起了,但還沒有...

執行狀態監控的方式

一般有3種常用的執行狀態的監控方式,分別是利用作業系統命令 利用客戶端命令和工具 服務端介面支援。下面分別介紹。1 利用作業系統命令 1 網路命令 ping nslookup nm tool tracetroute dig telnet nc curl 2 監控程序 ps netstat pgrep...