8 回答

TA貢獻2011條經驗 獲得超2個贊
這個在深入理解jvm中有介紹,具體數字記不清,原理是這樣的,jvm為線程提供了大概9個優(yōu)先級,但是不同的操作系統(tǒng)提供的優(yōu)先級等級也不同,windows沒到9個,linux比較多,solaris比linux還要多,而且線程或進程的調度是交由操作系統(tǒng)cpu調度策略調度的,如果你是windows操作系統(tǒng),假如它只提供了兩種優(yōu)先級,那么你設置的jvm優(yōu)先級1~4可能映射到操作系統(tǒng)的1優(yōu)先級,而5~9映射到操作系統(tǒng)的2優(yōu)先級,所以1~4的效果是一樣的,5~9的效果是一樣的。
這個問題在深入理解jvm中,多線程優(yōu)化那部分有介紹!

TA貢獻1772條經驗 獲得超8個贊
只有當系統(tǒng)資源被其它程序所占用完,沒有釋放的時候,線程才會考慮優(yōu)先級,才會讓級別越高的越先執(zhí)行。資源充足的時候不沒有優(yōu)先級的概念的。

TA貢獻1812條經驗 獲得超5個贊
與線程休眠類似,線程的優(yōu)先級仍然無法保障線程的執(zhí)行次序。只不過,優(yōu)先級高的線程獲取CPU資源的概率較大,優(yōu)先級低的并非沒機會執(zhí)行。

TA貢獻1802條經驗 獲得超5個贊
線程的優(yōu)先級高的線程比線程優(yōu)先級低的線程將獲得更多CPU時間,但不代表優(yōu)先級高的一定比優(yōu)先級低的先執(zhí)行完。

TA貢獻1884條經驗 獲得超4個贊
如果公司的廁所有3個坑,這時候大boss和一個普通員工同時進入廁所,不用考慮什么職位高低,一起進去爽吧,但是如果大boss和5個普通員工同時進入廁所,我猜肯定是讓大boss先選一個舒服的坑吧,然后其他5個員工pk剩下的2個坑

TA貢獻1869條經驗 獲得超4個贊
首先,標題就有錯,你問的是線程的優(yōu)先級。
其次,程序中不能依靠設定線程優(yōu)先級的高低來確定線程先后的執(zhí)行順序,因為這個最終是由操作系統(tǒng)調度實現的,一般操作系統(tǒng)不會保證優(yōu)先級高的線程一定在優(yōu)先級低的線程之前執(zhí)行。
添加回答
舉報