首頁  >  文章  >  Java  >  java start()和run()的差別是什麼

java start()和run()的差別是什麼

WBOY
WBOY轉載
2023-04-25 08:43:062155瀏覽

1、概念區別

start():產生線程物件後,呼叫start()方法啟動線程,線程處於運行狀態RUNNABLE中的Ready就緒狀態中,此時線程等待被CPU調度,調度後再執行run()方法,使用start()方法啟動線程,真正實作了多線程。

run():run()方法是Thread中一個普通方法,直接用執行緒物件呼叫run()方法,會在主執行緒中執行。因為程式中只有一個主線程,當程式中有兩個線程時,直接呼叫run()方法,程式依照順序執行,沒有實作多線程。

2、實例

public static void main(String[] args) {
    Thread t1 = new Thread(new Runnable() {
        @Override
        public void run() {
            System.out.println(Thread.currentThread().getName());
        }
    },"unstoppbale_t");
    t1.start();
}

以上是java start()和run()的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除