package thread.lzy.www;
/**
* 守护线程:是为用户线程服务的;JVM停止不用等待守护线程执行完毕
* 默认:用户线程jvm等待用户线程执行完才会停止
* @author Administration
*
*/
public class DaemonTest {
public static void main(String[] args) {
God god=new God();
You you=new You();
Thread t=new Thread(god);
t.setDaemon(true);//将用户线程调整为守护
t.start();
new Thread(you).start();
}
}
class You implements Runnable{
@Override
public void run() {
for(int i=0;i<365*100;i++) {
System.out.println("you are live.."+i);
}
System.out.println("you are die");
}
}
class God implements Runnable{
@Override
public void run() {
for(;true;) {
System.out.println("上帝在守护着你");
}
}
}
代码中 God是一个死循环,会一直运行,但14行将用户线程调整为守护线程后,其他用户线程(在这里指的You)运行完成后,它也会自动结束