守护线程
什么是守护线程?
- 守护线程:一种特殊的线程,驻守在线程后台,完成系统性的工作,当启动守护线程的线程结束时,守护线程也会随之结束。
- 用户线程:只有当完成自己的业务工作时,才会结束。
守护线程有什么作用?
比如jvm在运行的时候,会启动很多守护进程。例如垃圾回收的线程以及JIT即时编译的线程。如果当jvm只有守护线程时,jvm会自然退出。
show me code
public class DaemonDemo {
public static class DaemonThread extends Thread {
@Override
public void run() {
while (true){
System.out.println("I am alive!");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
DaemonThread daemonThread = new DaemonThread();
daemonThread.setDaemon(true);
daemonThread.start();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}