代码如下:
package java2; public class TestDeamon { //这个只测试守护线程在主程序结束后会自动消失 public static void main(String[] args) { Thread deamonThread =new Thread(new Runnable() { @Override public void run() { // TODO 自动生成的方法存根 while(true) { System.out.println("hi Daemon"); try { Thread.sleep(10); } catch (InterruptedException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } } }); //设置守护线程 //守护线程:用户线程已经全部退出运行了,只剩下守护线程存在了,虚拟机也就退出了。 因为没有了被守护者,守护线程也就没有工作可做了,也就没有继续运行程序的必要了 //就是主程序运行完了,用守护线程这个线程就会结束了,不然会一直一直运行下去 deamonThread.setDaemon(true);//必须在开始运行前设置 deamonThread.start(); try { Thread.sleep(100); } catch (InterruptedException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } System.out.println("main thread is over!"); } }