linux daemon守护线程,线程8--守护线程Daemon
packagebook.thread;/***?Daemon(守護)線程
*?Daemon線程區別一般線程之處是:
*?只有虛擬機中的用戶線程(非Daimon線程)全部結束,Daemon線程就會立即結束,并且也不會調用finally里的語句。
*?daemon線程所產生的所有線程都是daemon的*/publicclassDaemon?{staticclassMainThreadextendsThread?{publicvoidrun()?{
System.out.println("MainThread?is?daemon?"+this.isDaemon());
System.out.println("MainThread?begin!");//啟動子線程Thread?sub1=newSubThread();//sub1線程為守護線程sub1.setDaemon(true);
sub1.start();try{
Thread.sleep(1000);
}catch(InterruptedException?e)?{
e.printStackTrace();
}finally{
System.out.println("MainThread"+"finally");
}
System.out.println("MainThread?end!");
}
}staticclassSubThreadextendsThread?{publicvoidrun()?{
System.out.println("SubThread?is?daemon?"+this.isDaemon());
System.out.println("SubThread?begin!");inti=0;try{while(i<10)?{
System.out.println("SubThread"+i++);
Thread.sleep(200);
}
}catch(InterruptedException?e)?{
e.printStackTrace();
}finally{
System.out.println("SubThread?finally");
}
System.out.println("SubThread?end!");
}
}publicstaticvoidmain(String[]?args)?{
System.out.println("Main?begin!");//默認情況下mainThread是普通線程Thread?mainThread=newMainThread();//啟動mainThread線程mainThread.start();try{
Thread.sleep(500);
}catch(InterruptedException?e1)?{
e1.printStackTrace();
}
System.out.println("Main?end!");
}
}
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的linux daemon守护线程,线程8--守护线程Daemon的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 连接两个异构网,如何在Lin
- 下一篇: c语言中把每个字母向前移1位,C语言:将