守护线程

对于线程,有个守护的线程的概念。如何理解呢?比如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();

}

}

}

}

猜你喜欢

转载自zengshaotao.iteye.com/blog/2399580