執行緒及其建立的方式

2021-07-04 01:23:07 字數 1324 閱讀 3501

執行緒主要發揮作用的時候:當乙個執行緒所執行的i/o被阻塞的時候,同一程序中的其他執行緒可以使用cpu來進行計算。這樣,就提高了程式的執行效率。

狀態:執行、就緒(等待被呼叫)、阻塞(等待i/o資源)

兩種建立方法

繼承thread類,並override其中的run()方法(當乙個類沒有繼承其他類的時候,適合用這種方法)

實現runnable介面,並實現run()方法(當乙個類已經繼承另外乙個類的時候,適合用這種方法)

通過使用自定義的構造方法傳遞各種引數。

啟動:獲得thread物件後呼叫start()方法。

方法一:繼承thread類

public class mythread1 extends thread 

public void run()

public static void main(string args)

}

方法二:實現runnable介面

public class mythread implements runnable 

@override

public void run()

public static void main(string args)

}

一般情況下,可以使用乙個內部類來定義另外乙個執行緒:

/**

* 啟動子執行緒的方式(使用內部類定義另外乙個執行緒)

* @author xujijun

* */

public class mythread

/*** 內部類,實現子執行緒

* */

private class anotherthread extends thread

@override

public void run()

}}

等待和喚醒機制

使用object.wait()和object.notify(),必須在同步方法或同步塊裡呼叫

使用join()方法等待另外乙個執行緒的終止,如:

a.join();

system.out.print("end"); //等待執行緒a結束後再列印出「end」

sleep()和wait()的區別

建立執行緒的方式

thread 類進行派生並覆蓋 run方法 實現runnable介面建立 public class createthread start0會呼叫run方法,如果runnable null 會執行run方法,2.如果在構造thread的時候沒有傳遞或沒有複寫thread的run方法,該thread將不...

執行緒的建立方式

繼承thread類實現 實現runnable介面方式 實現callable介面方式 其中前兩種比較常用。但是,需要有返回值需要實現callable介面。繼承thread類,並重寫run方法 public class mythread extends thread mythread thread ne...

建立執行緒的方式

建立乙個執行緒主要有以下幾種方法 繼承thread類建立執行緒 是將乙個類宣告為thread的子類,這個子類應該重寫thread類的run方法,然後例項化這個子類物件並呼叫start方法。thread類本質上是實現了runnable介面的乙個例項。public class testthread ex...