執行緒的四種狀態
1. 新狀態:執行緒已被建立但尚未執行(start() 尚未被呼叫)。
2. 可執行狀態:執行緒可以執行,雖然不一定正在執行。cpu 時間隨時可能被分配給該執行緒,從而使得它執行。
4. 阻塞狀態:執行緒不會被分配 cpu 時間,無法執行。
執行緒的優先順序
執行緒優先順序可以給cpu提供一種建議,優先執行優先順序較高的程序,既優先順序高的執行緒就可以獲得更多的cpu時間,請注意這並不是 cpu一定先執行優先順序高的程序,只不過優先順序低的程序獲得cpu時間的機會相對小一些
實現方法:呼叫thread,你可以呼叫 thread 類的方法 getpriority() 和 setpriority()來訪問執行緒的優先順序,執行緒的優先順序界於1(min_priority)和10(max_priority)之間,預設是5(norm_priority)。 雖然1到10之間的數值都可以選擇,但是並不是所有系統都有這麼多的優先順序,但是1 5 10是會有的.也就是這三個常量的對映.不推薦新手改變優先順序.
《Java 執行緒程式設計》學習筆記6
thread.max priority 10 thread.min priority 1 thread.norm priority 5 何時 setpriority 失效 執行緒有如下6種狀態 執行緒規劃器控制哪乙個準備執行的執行緒實際執行於處理器上。任何時候,只有乙個執行緒實際處於執行狀態。所有其...
Java併發之執行緒池學習筆記
juc包下有乙個重要的執行緒池的實現,大大優化方便了我們對執行緒的使用,而不再是傳統的new乙個thread。執行緒池相對傳統的直接建立執行緒主要有三個優點 1.統一管理執行緒,可以重用存在的執行緒,避免多次的建立 消亡的開銷,使得效能表現得更好 2.可以有效控制最大併發執行緒數,提高系統資源利用率...
(三)Java併發學習筆記 執行緒封閉
實現好的併發是一件困難的事情,所以很多時候我們都想躲避併發。避免併發最簡單的方法就是執行緒封閉。什麼是執行緒封閉呢?就是把物件封裝到乙個執行緒裡,只有這乙個執行緒能看到此物件。那麼這個物件就算不是執行緒安全的也不會出現任何安全問題。實現執行緒封閉有哪些方法呢?這是完全靠實現者控制的執行緒封閉,他的執...