1.線程禮讓 禮讓線程,讓當前正在執行線程暫停 不是阻塞線程,而是將線程從運行狀態轉入就緒狀態 讓cpu調度器重新調度 例: 例 2.線程合併 join合併線程,待此線程執行完成後,再執行其他線程,其他線程阻塞 例: 例: 3.線程的狀態 4.線程優先順序 Java提供一個線程調度器來監控程式中啟動後 ...
1.線程禮讓
禮讓線程,讓當前正在執行線程暫停
不是阻塞線程,而是將線程從運行狀態轉入就緒狀態
讓cpu調度器重新調度
例:
例
2.線程合併
join合併線程,待此線程執行完成後,再執行其他線程,其他線程阻塞
例:
例:
3.線程的狀態
4.線程優先順序
Java提供一個線程調度器來監控程式中啟動後進入就緒狀態的所有線程。線程調度器按照線程的優先順序決定應調度哪個線程來執行
線程的優先順序用數字表示,範圍從1到10
Thread.MIN PRIORITY=1
Thread.MAX PRIORITY=10
Thread.NORM PRIORITY=5(預設)
使用下述方法獲得或還是設置線程對象的優先順序
int getPriority();
void setPriority(int new Priority);
優先順序的設定建議在start()調用前
註:優先順序低只是意味著獲得調度的概率低。並不是絕對先調用優先順序高後調用優先順序低的線程
例:
5.守護線程
線程分為用戶線程和守護線程
虛擬機必須確保用戶線程執行完畢
虛擬機不用等待守護線程執行完畢
如後臺記錄操作日誌、監控記憶體使用等
例:
6.其他方法
1.isAlive:判斷線程是否還活著,即線程是否終止
2.setName:給線程起名
3.getName:獲取線程名稱
4.currentThread():取得當前正在運行的線程對象,也就是獲取自己本身
例: