javarun,javaRuntime類

本文目錄一覽:

java中線程的run()方法是什麼?

上面幾個說的也是我要說的幾點,

run() 方法是不用參數的,不用傳他就會知道。

因為線程裡邊大多都是死循環,和主線程同步運行。(當然實際不是這樣的。但可以這樣理解)

比如:定義一個用於轉換狀態的屬性。

static final int STATE_GAME_RUN = 0;

static final int STATE_GAME_OVER = 1;

int state;

run 方法裡邊有這樣的:

switch(state)

case STATE_GAME_RUN :

System.out.println(“遊戲進行中”);

break;

case STATE_GAME_OVER:

System.out.println(“遊戲結束”);

break;

當主線程裡邊state改變時,線程裡邊馬上就會知道,還用傳

什麼是javarun

javarun?

public class test extends Thread {

public void run() {

int i = 0;

while(true) {

try {

sleep(1000);

i ++;

System.out.println(this.getName() + i);

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}

public static void main(String[] args) {

new test().start();

}

}

java中線程的run()方法

當一個線程調用它的start()方法後,虛擬機就會去調用這個線程中的run()方法。

如myThread是一個線程對象,調用myThread.start();後,當CPU輪到這個線程使用時,虛擬機就會去調用這個線程的run()方法。

Java線程中run和start方法的區別

區別:調用start方法實現多線程,而調用run方法沒有實現多線程

Start:

用start方法來啟動線程,真正實現了多線程運行,這時無需等待run方法體代碼執行完畢而直接繼續執行下面的代碼。通過調用Thread類的start()方法來啟動一個線程,這時此線程處於就緒(可運行)狀態,並沒有運行,一旦得到spu時間片,就開始執行run()方法,這裡方法run()稱為線程體,它包含了要執行的這個線程的內容,Run方法運行結束,此線程隨即終止。

Run:

run()方法只是類的一個普通方法而已,如果直接調用Run方法,程序中依然只有主線程這一個線程,其程序執行路徑還是只有一條,還是要順序執行,還是要等待run方法體執行完畢後才可繼續執行下面的代碼,這樣就沒有達到寫線程的目的。

總結:調用start方法方可啟動線程,而run方法只是thread的一個普通方法調用,還是在主線程里執行。

原創文章,作者:NBKZ,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/140907.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
NBKZ的頭像NBKZ
上一篇 2024-10-04 00:24
下一篇 2024-10-04 00:24

相關推薦

  • Javaruntime.exec詳解

    一、exec方法的基本使用 在Java中,可以通過Javaruntime.exec()方法來啟動一個子進程,並在子進程中執行一段操作系統命令。下面是一個簡單的示例,展示了exec方…

    編程 2024-12-16

發表回復

登錄後才能評論