一、新建(new):新建線程對象,未調用start方法。面試
二、可運行(runnable):線程對象建立後,被調用start()方法。此狀態的線程位於可運行線程池中,等待獲取CPU的使用權。.net
三、運行中(running):線程獲取了CPU的使用權,執行程序代碼線程
四、阻塞(blocked):線程由於某種緣由放棄了CPU的使用權,暫時中止運行,知道線程進入可運行狀態,纔有機會再次獲取CPU的使用權進入運行狀態。對象
五、消亡(dead):線程已經執行完畢,主線程main方法結束或因異常退出,子線程run方法結束或因異常退出blog