常見執行緒方法
阿新 • • 發佈:2018-11-12
1-暫停Thread.sleep(1000); 表示當前執行緒暫停1000毫秒 ,但不會釋放資源,其他執行緒不受影響
Thread.sleep(1000); 會丟擲InterruptedException 中斷異常,因為當前執行緒sleep的時候,有可能被停止,這時就會丟擲 InterruptedException
2-join,該執行緒加入主執行緒,只有該執行緒結束時,才會向下走
是說如果之前t1.start,t2.start, try t1.join,兩個都start,但是萬一t2中有個停止,有個if讓他停止了,而喚醒resume再join之後,就只有等t1完了才能執行到那行程式碼讓t2繼續
並且t.join,既然之前t在sleep,其他的也得等到,一直到t執行緒結束
3-執行緒優先順序,讓執行緒的競爭cpu的能力改變
t1.setPriority(Thread.MAX_PRIORITY);
t2.setPriority(Thread.MIN_PRIORITY);
4-臨時暫停
Thread t2= new Thread(){
public void run(){
while(!leesin.isDead()){
//臨時暫停,使得t1可以佔用CPU資源
Thread.yield();
bh.attackHero(leesin);
}
}
};
5-守護執行緒
相當於後勤,當全部都守護了這個程序就沒了
t1.setDaemon(
true
);
t1.start();