用户线程与守护线程

简介: 用户线程与守护线程

在Java中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程) 。
用户线程是最常见的线程,比如通过main方法启动,就会创建一个用户线程。
Daemon的作用是为其他线程的运行提供便利服务,守护线程最典型的应用就是 GC (垃圾回收器),它就是一个很称职的守护者。
JVM中的垃圾回收、JIT编译器线程就是最常见的守护线程。
只要有一个用户线程在运行,守护线程就会一直运行。只有所有的用户线程都结束的时候,守护线程才会退出。
编写代码时,也可以通过thread.setDaemon(true)指定线程为守护线程。

Thread daemonTread = new Thread();
 
  // 设定 daemonThread 为 守护线程,默认false
 daemonThread.setDaemon(true);
 
 // 验证当前线程是否为守护线程,返回 true 则为守护线程
 daemonThread.isDaemon();

守护线程的注意事项:

  1. thread.setDaemon(true)要在thread.start()之前设置,否则会抛出IllegalThreadStateException异常。你不能把正在运行的线程设置为守护线程;
  2. 在守护线程中产生的新线程也是守护线程;
  3. 读写操作或者计算逻辑不可以设置为守护线程;
目录
相关文章
|
6月前
|
Java
学习多线程之守护线程
学习多线程之守护线程
61 0
|
5月前
|
Java
java线程之用户线程与守护线程
java线程之用户线程与守护线程
java线程之用户线程与守护线程
|
6月前
|
数据采集 安全 Java
Python的多线程,守护线程,线程安全
Python的多线程,守护线程,线程安全
|
6月前
|
监控 Java 测试技术
面试准备不充分,被Java守护线程干懵了,面试官主打一个东西没用但你得会
面试准备不充分,被Java守护线程干懵了,面试官主打一个东西没用但你得会
61 1
|
6月前
|
Java 调度
多线程的基本概念和实现方式,线程的调度,守护线程、礼让线程、插入线程
多线程的基本概念和实现方式,线程的调度,守护线程、礼让线程、插入线程
59 0
|
6月前
|
监控 网络协议 Linux
守护线程
守护线程
47 0
|
6月前
|
Java C++ Spring
谈谈springboot里面的守护线程与本地线程
【4月更文挑战第18天】在Spring Boot中,线程的概念同Java标准线程模型一致,即区分为守护线程和用户线程。Spring Boot本身并不直接提供创建守护线程或用户线程的特殊机制,但它允许你通过标准Java方式或者利用Spring的框架特性来管理这些线程
354 2
|
6月前
|
Java 数据安全/隐私保护 块存储
多线程与并发编程【守护线程、线程同步】(三)-全面详解(学习总结---从入门到深化)
多线程与并发编程【守护线程、线程同步】(三)-全面详解(学习总结---从入门到深化)
113 1
|
6月前
|
监控 安全 Java
【python实操】马上毕业了,你还不懂什么是守护线程、线程、进程?(附12306抢票程序-源代码)
【python实操】马上毕业了,你还不懂什么是守护线程、线程、进程?(附12306抢票程序-源代码)
75 0
|
Java 开发者
停止线程 & 守护线程 & 线程阻塞
停止线程 & 守护线程 & 线程阻塞
25 0
停止线程 & 守护线程 & 线程阻塞

热门文章

最新文章