原始出處 、作者資訊和本宣告。否則將追究法律責任。
thread的start和run
1) start:
用start方法來啟動執行緒,真正實現了多執行緒執行,這時無需等待run方法體**執行完畢而直接繼續執行下面的**。通過呼叫thread類的start()方法來啟動乙個執行緒,這時此執行緒處於就緒(可執行)狀態,並沒有執行,一旦得到spu時間片,就開始執行run()方法,這裡方法run()稱為執行緒體,它包含了要執行的這個執行緒的內容,run方法執行結束,此執行緒隨即終止。
2) run:
run()方法只是類的乙個普通方法而已,如果直接呼叫run方法,程式中依然只有主線程這乙個執行緒,其程式執行路徑還是只有一條,還是要順序執行,還是要等待run方法體執行完畢後才可繼續執行下面的**,這樣就沒有達到寫執行緒的目的。
總結:呼叫start方法方可啟動執行緒,而run方法只是thread的乙個普通方法呼叫,還是在主線程裡執行。
本文出自 「學習筆記」 部落格,請務必保留此出處
Java多執行緒中run和start的區別
thread的start和run 1 start 用start方法來啟動執行緒,真正實現了多執行緒執行,這時無需等待run方法體 執行完畢而直接繼續執行下面的 通過呼叫thread類的start 方法來啟動乙個執行緒,這時此執行緒處於就緒 可執行 狀態,並沒有執行,一旦得到spu時間片,就開始執行r...
java多執行緒run 和start 的區別
當你啟動執行緒,使用start 系統會把run 方法當成執行緒執行體來處理,這是正常的,也是正確的情況。但是,當你啟動執行緒時,呼叫run 方法,系統run 方法會立即執行,但是這時候系統會把run 方法當成普通的方法,執行緒物件也當成乙個普通物件。不理解我上面說的話?那我就在解釋一下。第乙個問題,...
多執行緒中run 和start 的區別
實現並啟動執行緒有兩種方法 1 寫乙個類繼承自thread類,重寫run方法。用start方法啟動執行緒 2 寫乙個類實現runnable介面,實現run方法。用new thread runnable target start 方法來啟動 多執行緒原理 相當於玩遊戲機,只有乙個遊戲機 cpu 可是有...