您当前的位置: 首页 >  Java

小志的博客

暂无认证

  • 3浏览

    0关注

    1217博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Java并发多线程编程——守护线程案例

小志的博客 发布时间:2021-04-08 22:57:17 ,浏览量:3

一、守护线程的理解
  • 守护线程会在非守护线程执行完毕时就结束,即使自己还没有执行完。
  • 简单理解即别的线程停止运行守护线程也停止运行。
  • 守护线程最典型的应用就是 GC (垃圾回收器),它就是一个很称职的守护者。
二、如何设置为守护线程
  • 在Thread类中提供了一个setDaemon(true)方法来将一个普通的线程(用户线程)设置为守护线程 在这里插入图片描述
三、守护线程案例

案例描述:设置d1为守护线程,主线程运行2秒后结束,查看d1守护线程是否还再运行。

1、代码

package com.xz.thread.t1;

/**
 * @description: 守护线程案例
 * @author: xz
 */
public class Demo2 extends Thread{
    //构造方法
    public Demo2(String name){
        super(name);
    }

    @Override
    public void run() {
       while(true){
            System.out.println(getName()+"——运行......");
       }
    }

    public static void main(String[] args) {
        Demo2 d1 = new Demo2("线程1");

        //设置线程t1为守护线程
        d1.setDaemon(true);

        d1.start();
        //设置主线程运行2秒后结束
        try {
            Thread.sleep(2000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

2、运行结果如下图: 在这里插入图片描述 3、结论

  • 由第2步可知,主线程结束后,d1守护线程立即停止。
关注
打赏
1661269038
查看更多评论
立即登录/注册

微信扫码登录

0.0416s