四、守护线程
- setDaemon(true)设置守护线程;
- 线程有两大类:用户线程和守护线程;
- 如果程序中所有用户线程都执行完毕了,守护线程会自动结束。垃圾回收器线程属于守护线程。
class DeamonThread extends Thread{
public DeamonThread(String name){
super(name);
}
@Override
public void run() {
System.out.println("子线程开始");
for (int i=0;i<1000;i++){
System.out.println(Thread.currentThread().getName()+"--------"+i);
}
System.out.println("子线程结束");
}
}
public class demo {
public static void main(String[] args) {
DeamonThread deamonThread = new DeamonThread("新建子线程");
deamonThread.setDaemon(true);//设置子线程为守护线程
deamonThread.start();
for(int i=0;i<5;i++){
System.out.println("主线程输出:"+i);
}
}
}
运行结果:
主线程输出:0
主线程输出:1
主线程输出:2
子线程开始
新建子线程--------0
新建子线程--------1
新建子线程--------2
主线程输出:3
新建子线程--------3
主线程输出:4
新建子线程--------4
新建子线程--------5