1. 程式人生 > >Thread start()和run()方法的區別??

Thread start()和run()方法的區別??

今天去面試被問蒙圈了。問執行緒的start()和run()方法有什麼區別,我心想這start()方法聽名字是執行緒的啟動方法,run()方法就是實現runnable介面或者實現Thread類時覆寫的方法,這會有什麼區別嗎?有可比性嗎?工作了8年,第一次聽到這問題,真的蒙了。

本著求真務學的態度,回來查一下,莫非是自己見識短淺,孤陋寡聞了?一查網上還是有很多人來比較兩個方法的區別的。就如下面這篇寫得挺詳細。

http://www.runoob.com/note/33934

不查不知道,一查就被氣得吐血。啟動執行緒的就是start()方法非同步執行,run()方法就是普通方法呼叫同步執行。

尼瑪,用執行緒你會用run方法執行嗎?這倆方法從功能上講都不一樣,有可比性嗎?

好好好,小崽子們會玩兒!!!

寫此文提示,如果有哪個面試官或者即將成為面試官的人,提問的時候,建議如下問法:

請您說一說執行緒的start()方法和run()方法。

別加區別,因為倆方法真的沒有可比性。

 

執行緒幾個狀態面試的時候,也常被問到。

建立態、就緒態、執行態、阻塞態、消亡態