线程分为用户线程及守护线程。
虚拟机必须确保用户线程执行完毕。
虚拟机不用等待守护线程执行完毕。
如后台记录操作日志、监控内存等使用。
/**
* 守护线程:为用户线程服务。JVM停止不用等待守护线程执行完毕。
*/
public class DeamonTest {
public static void main(String[] args) throws InterruptedException {
Thread first = new Thread(new FirstClass());
Thread second = new Thread(new SecondClass());
second.setDaemon(true); // 将用户线程调整为守护线程
second.start();
first.start();
}
}
class FirstClass implements Runnable {
@Override
public void run() {
for (int i = 0; i < 365; i++) {
System.out.println("first");
}
System.out.println("end=");
}
}
class SecondClass implements Runnable {
@Override
public void run() {
for (; true; ) {
System.out.println("second");
}
}
}
网友评论