这是一个非常简短的问题,但无法从任何地方得到答案。
可以创建多个守护程序线程吗?
答案 0 :(得分:2)
是。您只需使用
等代码进行测试即可Thread t1 = new Thread(()->{
while(true){
System.out.println("daemon1");
try {
TimeUnit.SECONDS.sleep(1);
} catch (Exception e) {}
}
});
t1.setDaemon(true);
Thread t2 = new Thread(()->{
while(true){
System.out.println("daemon2");
try {
TimeUnit.SECONDS.sleep(2);
} catch (Exception e) {}
}
});
t2.setDaemon(true);
t1.start();
t2.start();
try {
TimeUnit.SECONDS.sleep(5);
} catch (Exception e) {}
System.out.println("main thread stopped");
输出:
daemon1
daemon2
daemon1
daemon2
daemon1
daemon1
daemon1
daemon2
daemon1
main thread stopped
如您所见,两个守护进程同时运行。此外,由于没有其他非守护程序线程,应用程序停止。