用户线程和守护线程

简介: 守护线程守护线程是一种特殊的线程,在后台默默地完成一些系统性的服务,比如垃圾回收线程用户线程是系统的工作线程,它会完成这个程序需要完成的业务操作

用户线程和守护线程
Java线程分为用户线程和守护线程,线程的daemon属性为true表示是守护线程,false表示是用户线程
守护线程
守护线程是一种特殊的线程,在后台默默地完成一些系统性的服务,比如垃圾回收线程
用户线程
是系统的工作线程,它会完成这个程序需要完成的业务操作
代码示例
public class DaemonDemo {

public static void main(String[] args) {
    Thread t1 = new Thread(() -> {
        System.out.println(Thread.currentThread().getName() + "\t 开始运行," + (Thread.currentThread().isDaemon() ? "守护线程" : "用户线程"));
        while (true){

        }
    }, "t1");
    t1.setDaemon(true);
    t1.start();

    try {
        TimeUnit.SECONDS.sleep(3);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }

    System.out.println("------main线程运行完毕");
}

}
说明
当程序中所有用户线程执行完毕之后,不管守护线程是否结束,系统都会自动退出
设置守护线程,需要在start()方法之前进行
如果用户线程全部结束了,意味着程序需要完成的业务操作已经结束了,系统可以退出了。所以当系统只剩下守护进程的时候,java虚拟机会自动退出

相关文章
|
5月前
|
Java
学习多线程之守护线程
学习多线程之守护线程
55 0
|
4月前
|
Java
java线程之用户线程与守护线程
java线程之用户线程与守护线程
java线程之用户线程与守护线程
|
5月前
|
数据采集 安全 Java
Python的多线程,守护线程,线程安全
Python的多线程,守护线程,线程安全
|
5月前
|
Java 调度
多线程的基本概念和实现方式,线程的调度,守护线程、礼让线程、插入线程
多线程的基本概念和实现方式,线程的调度,守护线程、礼让线程、插入线程
48 0
|
5月前
|
监控 Java 测试技术
面试准备不充分,被Java守护线程干懵了,面试官主打一个东西没用但你得会
面试准备不充分,被Java守护线程干懵了,面试官主打一个东西没用但你得会
55 1
|
5月前
|
监控 网络协议 Linux
守护线程
守护线程
40 0
|
5月前
|
Java C++ Spring
谈谈springboot里面的守护线程与本地线程
【4月更文挑战第18天】在Spring Boot中,线程的概念同Java标准线程模型一致,即区分为守护线程和用户线程。Spring Boot本身并不直接提供创建守护线程或用户线程的特殊机制,但它允许你通过标准Java方式或者利用Spring的框架特性来管理这些线程
296 2
|
5月前
|
Java 数据安全/隐私保护 块存储
多线程与并发编程【守护线程、线程同步】(三)-全面详解(学习总结---从入门到深化)
多线程与并发编程【守护线程、线程同步】(三)-全面详解(学习总结---从入门到深化)
105 1
|
5月前
|
监控 安全 Java
【python实操】马上毕业了,你还不懂什么是守护线程、线程、进程?(附12306抢票程序-源代码)
【python实操】马上毕业了,你还不懂什么是守护线程、线程、进程?(附12306抢票程序-源代码)
67 0
|
12月前
|
Java 开发者
停止线程 & 守护线程 & 线程阻塞
停止线程 & 守护线程 & 线程阻塞
21 0
停止线程 & 守护线程 & 线程阻塞