1. 程式人生 > >常見執行緒方法

常見執行緒方法

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();