守护线程、后台线程、DaemonThread

package cm;

public class test20180502DaemonThreads extends Thread {// 守护线程,为其他线程提供服务的线程,不属于程序不可或缺的线程。所有非守护线程结束程序就结束了,

	public static void main(String[] args) {
		
		new test20180502DaemonThreads();
	}

	public test20180502DaemonThreads() {
		super(""+1);
		setDaemon(true);//设置成守护线程,main线程是非守护线程。main执行完之后,整个程序就执行完成了。
		//如果一个线程是守护线程,那么它创建的线程也是守护线程。
		start();
	}
	public void run() {
		try {
			sleep(10000);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
	}
}
//线程的join()方法,对一个线程调用join()方法,此线程等待被设置join的线程醒来,如果被设置的join的线程正常结束,或则被中断,则调用此线程也会被中断。

猜你喜欢

转载自blog.csdn.net/bigseacoming/article/details/80195845