守护线程

守护线程

  • 线程分为用户线程守护线程
  • 虚拟机必须确保用户线程执行完毕
  • 虚拟机不用等待守护线程执行完毕
//测试守护线程
//上帝守护你

public class TestDaemon {
    public static void main(String[] args) {

        God god = new God();
        You1 you1 = new You1();

        Thread thread = new Thread(god);
        thread.setDaemon(true);//默认是false表示是用户线程

        thread.start();//守护线程启动

        new Thread(you1).start();//用户线程启动
    }

}

//上帝
class God implements Runnable{
    @Override
    public void run() {
        while (true){
            System.out.println("上帝保佑着你");
        }
    }
}

//你
class You1 implements Runnable{
    @Override
    public void run() {
        for (int i = 0; i < 36500; i++) {
            System.out.println("开心活着");
        }

        System.out.println("=======goodbye=======");
    }
}

用户线程结束后守护线程还在运行,当虚拟机关闭后,守护线程也会关闭。

posted @ 2021-03-03 16:06  PitayaWalk  阅读(23)  评论(0)    收藏  举报