- 相關(guān)推薦
Java語(yǔ)言start和run方法的區別
導語(yǔ):Thread類(lèi)定義了一個(gè)功能,用于存儲線(xiàn)程要運行的代碼,該存儲功能就是run方法。那么它和start方法有什么不同呢?讓我們了解一下吧!
調用start方法方可啟動(dòng)線(xiàn)程,而run方法只是thread的一個(gè)普通方法,調用run方法不能實(shí)現多線(xiàn)程;
Start()方法:
start方法用來(lái)啟動(dòng)線(xiàn)程,實(shí)現了多線(xiàn)程運行,這時(shí)無(wú)需等待run方法體代碼執行完畢而直接繼續執行下面的
代碼。通過(guò)調用Thread類(lèi)的start()方法來(lái)啟動(dòng)一個(gè)線(xiàn)程,這時(shí)此線(xiàn)程處于就緒(可運行)狀態(tài),并沒(méi)有運行,
一旦得到cpu時(shí)間片(執行權),就開(kāi)始執行run()方法,這里方法run()稱(chēng)為線(xiàn)程體,
它包含了要執行的這個(gè)線(xiàn)程的內容,Run方法運行結束,此線(xiàn)程隨即終止。
Run()方法:
run()方法只是Thread類(lèi)的一個(gè)普通方法,如果直接調用Run方法,程序中依然只有主線(xiàn)程這一個(gè)線(xiàn)程,
其程序執行路徑還是只有一條,還是要等待run方法體執行完畢后才可繼續執行下面的代碼,
這樣就沒(méi)有達到多線(xiàn)程的目的。
【Java語(yǔ)言start和run方法的區別】相關(guān)文章:
Java和C語(yǔ)言的區別07-28
Java語(yǔ)言中substr和substring的區別07-12
C語(yǔ)言與JAVA的區別07-07
Java和PHP的區別04-30
java和js的區別08-05