JavaRunnable執行緒編寫介面程式碼

才智咖 人氣:5.13K

avaRunnable執行緒如何才能更好的適應目前的程式設計環境呢?下面我們就看看如何才能更好的進行相關環境。希望下面的文章對大家有所幫助。JavaRunnable執行緒介面只有一個方法run(),我們宣告自己的類實現Runnable介面並提供這一方法。

JavaRunnable執行緒編寫介面程式碼

將我們的執行緒程式碼寫入其中,就完成了這一部分 的任務。但是Runnable介面並沒有任何對執行緒的支援,我們還必須建立Thread類的例項,這一點通過Thread類的構造函 數 public Thread(Runnable target);來實現。

下面是一個例子:

ic class MyThread implements Runnable

2.{

count= 1, number;

ic MyThread(int num)

5.{

umber = num;

tln("建立執行緒 " + number);

8.}

ic void run()

10.{

e(true)

12.{

tln

14.("執行緒 " + number + ":計數 " + count);

(++count== 6) return;

16.}

17.}

ic static void main(String args[])

19.{

(int i = 0; i 〈 5;

21.i++) new Thread(new MyThread(i+1))。start();

22.}

23.}

嚴格地說,建立Thread子類的例項也是可行的,但是必須注意的是,該子類必須沒有覆蓋 Thread 類的 run 方法,否則該執行緒執行的將是子類的 run 方法,而不是我們用以實現Java Runnable執行緒介面的類的 run 方法,對此大家不妨試驗一下。

使用 Runnable 介面來實現多執行緒使得我們能夠在一個類中包容所有的`程式碼,有利於封裝,它的缺點在於,我們只能使用一套程式碼,若想建立多個執行緒 並使各個執行緒執行不同的程式碼,則仍必須額外建立類,如果這樣的話,在大多數情況下也許還不如直接用多個類分別繼承 Thread 來得緊湊。

綜上所述,兩種方法各有千秋,大家可以靈活運用。下面讓我們一起來研究一下多執行緒使用中的一些問題。

Java Runnable執行緒的四種狀態

1.新狀態:執行緒已被建立但尚未執行(start() 尚未被呼叫)。

2.可執行狀態:執行緒可以執行,雖然不一定正在執行。CPU 時間隨時可能被分配給該執行緒,從而使得它執行。

3.死亡狀態:正常情況下 run() 返回使得執行緒死亡。呼叫 stop()或 destroy() 亦有同樣效果,但是不被推薦,前者會產生異常,後者是強制終止,不會釋放鎖。

4.阻塞狀態:執行緒不會被分配 CPU 時間,無法執行。