对于线程,有个守护的线程的概念。如何理解呢?比如A线程里,new 出了线程B,如果A不是守护线程,那么A结束后,B依然可以执行。如果是守护线程,当A结束后,B不再执行
package thread;
public class ChildParentThread {
public static void main(String args[]){
Thread t = new ParentThread("parent");
t.setDaemon(true);
t.start();
}
}
class ParentThread extends Thread{
public ParentThread(String name){
super(name);
}
public void run(){
String temp = Thread.currentThread().getName();
System.out.println(temp+" before ");
new ChildThread("child").start();
System.out.println(temp+ " after ");
}
}
class ChildThread extends Thread{
public ChildThread(String name){
super(name);
}
public void run(){
String temp = Thread.currentThread().getName();
for(int i =0;i<100;i++){
System.out.println(temp+","+i);
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}