java線(xiàn)程面試題
一、線(xiàn)程的四種狀態(tài)
1. 新?tīng)顟B(tài):線(xiàn)程已被創(chuàng )建但尚未執行(start() 尚未被調用)。
2. 可執行狀態(tài):線(xiàn)程可以執行,雖然不一定正在執行。CPU 時(shí)間隨時(shí)可能被分配給該線(xiàn)程,從而使得它執行。
3. 死亡狀態(tài):正常情況下 run() 返回使得線(xiàn)程死亡。調用 stop()或 destroy() 亦有同樣效果,但是不被推薦,前者會(huì )產(chǎn)生異常,后者是強制終止,不會(huì )釋放鎖。
4. 阻塞狀態(tài):線(xiàn)程不會(huì )被分配 CPU 時(shí)間,無(wú)法執行。
二、線(xiàn)程的優(yōu)先級
線(xiàn)程的優(yōu)先級代表該線(xiàn)程的重要程度,當有多個(gè)線(xiàn)程同時(shí)處于可執行狀態(tài)并等待獲得 CPU 時(shí)間時(shí),線(xiàn)程調度系統根據各個(gè)線(xiàn)程的優(yōu)先級來(lái)決定給誰(shuí)分配 CPU 時(shí)間,優(yōu)先級高的'線(xiàn)程有更大的機會(huì )獲得 CPU 時(shí)間,優(yōu)先級低的線(xiàn)程也不是沒(méi)有機會(huì ),只是機會(huì )要小一些罷了。
你可以調用 Thread 類(lèi)的方法 getPriority() 和 setPriority()來(lái)存取線(xiàn)程的優(yōu)先級,線(xiàn)程的優(yōu)先級界于1(MIN_PRIORITY)和10(MAX_PRIORITY)之間,缺省是5(NORM_PRIORITY)。
【java線(xiàn)程面試題】相關(guān)文章:
精選Java線(xiàn)程面試題06-15
java多線(xiàn)程面試題201711-07
Java線(xiàn)程同步的方法09-27
構建多線(xiàn)程Java應用程序09-21
Java自定義線(xiàn)程池相關(guān)代碼09-30
java基礎面試題201711-13