java thread start()和run()方法簡析
更新時間:2012年11月21日 15:35:16 作者:
本文以java中thread的start()和run()的區(qū)別做詳細介紹, 需要了解跟多的朋友可以參考下
1.start()方法來啟動線程,真正實現(xiàn)了多線程運行,這時無需等待run方法體代碼執(zhí)行完畢而直接繼續(xù)執(zhí)行下面的代碼:
通過調用Thread類的start()方法來啟動一個線程,
這時此線程是處于就緒狀態(tài),
并沒有運行。
然后通過此Thread類調用方法run()來完成其運行操作的,
這里方法run()稱為線程體,
它包含了要執(zhí)行的這個線程的內容,
Run方法運行結束,
此線程終止,
而CPU再運行其它線程,
2.run()方法當作普通方法的方式調用,程序還是要順序執(zhí)行,還是要等待run方法體執(zhí)行完畢后才可繼續(xù)執(zhí)行下面的代碼:
而如果直接用Run方法,
這只是調用一個方法而已,
程序中依然只有主線程--這一個線程,
其程序執(zhí)行路徑還是只有一條,
這樣就沒有達到寫線程的目的。
通過調用Thread類的start()方法來啟動一個線程,
這時此線程是處于就緒狀態(tài),
并沒有運行。
然后通過此Thread類調用方法run()來完成其運行操作的,
這里方法run()稱為線程體,
它包含了要執(zhí)行的這個線程的內容,
Run方法運行結束,
此線程終止,
而CPU再運行其它線程,
2.run()方法當作普通方法的方式調用,程序還是要順序執(zhí)行,還是要等待run方法體執(zhí)行完畢后才可繼續(xù)執(zhí)行下面的代碼:
而如果直接用Run方法,
這只是調用一個方法而已,
程序中依然只有主線程--這一個線程,
其程序執(zhí)行路徑還是只有一條,
這樣就沒有達到寫線程的目的。
相關文章
java普通項目讀取不到resources目錄下資源文件的解決辦法
這篇文章主要給大家介紹了關于java普通項目讀取不到resources目錄下資源文件的解決辦法,Web項目中應該經常有這樣的需求,在maven項目的resources目錄下放一些文件,比如一些配置文件,資源文件等,需要的朋友可以參考下2023-09-09spring boot自定義配置時在yml文件輸入有提示問題及解決方案
自定義一個配置類,然后在yml文件具體配置值時,一般不會有提示,今天小編給大家分享spring boot自定義配置時在yml文件輸入有提示問題,感興趣的朋友一起看看吧2023-10-10SpringBoot整合sharding-jdbc實現(xiàn)自定義分庫分表的實踐
本文主要介紹了SpringBoot整合sharding-jdbc實現(xiàn)自定義分庫分表的實踐,將通過自定義算法來實現(xiàn)定制化的分庫分表來擴展相應業(yè)務,感興趣的可以了解一下2021-11-11