守护进程&前台进程

/*
 * 1.线程分用户线程和守护线程,对于jvm来说,只要存在一个用户线程,就不会结束;如果不存在任何用户线程,不管有多少守护线程,jvm都会结束退出
 * 2.设置为守护线程,通过setDaemon(true)来设置,如不设置,默认为false,设置方法必须在线程启动前调用,否则抛出异常;jvm垃圾回收线程,就是典型的守护线程应用
 * */
public class Test {
	public static void main(String[] aregs) {
		Thread m = new MoreThread();
		m.setDaemon(true);	//设置为false,程序死循环运行;设置为true,运行一段时间后,自动停止
		m.start();
		try {
			Thread.sleep(1000);
			System.out.println("====over====");
		} catch(Exception e) {
			
		}
	}
}

class MoreThread extends Thread {
	public void run() {
		while (true)
			System.out.println("run方法-->>" + Thread.currentThread().getName());
	}
}


异步启动线程
public void runAsync() {
        Thread thread = new Thread(this);
        thread.setDaemon(false);
        thread.start();
    }

你可能感兴趣的:(java 线程)