1. 程式人生 > >java多執行緒(5)後臺執行緒

java多執行緒(5)後臺執行緒

  1. 又一種執行緒的任務是服務其他執行緒的,又被稱為“守護執行緒”或則“精靈執行緒”, 像java的垃圾回收執行緒,當所有不是後臺執行緒的執行緒都死亡之後,後臺執行緒就會死亡。
  2. 呼叫Thread物件的setNaemon(true)來將執行緒設定為後臺執行緒
  3. 以下為程式碼示例,詳細講解穿插在程式碼中
    //執行程式,可以看到Thread-0 i 中的i並不能到達1000.因為中間的時候main執行緒已經結束了。
    //也就是說所有非後臺執行緒已經死亡了,所以daemonThread也就死亡了,所以i不會再累加了
    
    public class DaemonThread  extends  Thread{
        public void run(){
            for(int i=0; i<1000; i++){
                System.out.println(getName() + " " + i);
            }
        }
        public static void main(String args[]){
            DaemonThread daemonThread = new DaemonThread();
    
            daemonThread.setDaemon(true);
    //        通過setDaemon(true)方法將daemonThread執行緒設定為後臺執行緒
    
            daemonThread.start();
            for(int i=0 ;i<100; i++){
                System.out.println(Thread.currentThread().getName() + " " + i);
            }
        }
    }