美文网首页
守护线程

守护线程

作者: 迷糊小生 | 来源:发表于2019-03-24 09:37 被阅读0次

    在java线程中有两种线程,一种是用户线程,另一种是守护线程。

    守护线程是一种特殊的线程,当进程中不存在非守护线程了,守护线程也会自动销毁。典型的守护线程就是垃圾回收线程,当进程中没有非守护线程了,则垃圾回收线程也就没有存在的必要了。Daemon的作用就是为了其他线程的运行提供便利服务。

    public class GuardThread extends Thread {
        @Override
        public void run() {
            for (int i = 0; i < 50000; i++) {
                System.out.println(i);
            }
        }
    }
    public class Test {
        public static void main(String[] args) throws InterruptedException {
            GuardThread it = new GuardThread();
            it.setDaemon(true);//设置为当前线程的守护线程
            it.start();
            Thread.sleep(200);
            System.out.println("main线程结束,it线程会自动销毁,也就不会继续打印了");
        }
    }
    
    image.png

    由此可见当非守护线程全部销毁后,其守护线程还会继续运行一段时间然后自动销毁。

    相关文章

      网友评论

          本文标题:守护线程

          本文链接:https://www.haomeiwen.com/subject/zlvyvqtx.html