32 多线程(五)——守护线程
守护线程概念
- 线程分为守护线程与用户线程
- 虚拟机必需确保用户线程得以执行完毕
- 虚拟机无需确认守护线程执行完毕
- 守护线程如后台日志记录,内存监控之类
- 英文为:daemon
我们需要强调的就是:虚拟机无需等待守护线程执行完毕,当所有用户线程执行完毕后,程序就关闭。
讲一个进程设置为线程的方法为:
线程对象.setDaemon(true);
package _20191204; /** * 守护线程 Deamon * @author UID * jvm无需等待守护线程结束,它只需等待用户线程结束 */ public class Demo05_Daemon { public static void main(String[] args) { Thread t1 = new Thread(new Human()); Thread t2 = new Thread(new God()); t2.setDaemon(true);//将t2线程设置为守护线程 t1.start(); t2.start(); } } class Human implements Runnable{ @Override public void run() { for(int i = 0; i < 365; i++) { System.out.println("alive:"+i+"day!"); } } } class God implements Runnable{ @Override public void run() { while(true) { System.out.println("bless you"); } } }