Thread.setDaemon
2010-10-18 19:04
316 查看
忽然在某段程序中看到了Thread.setDaemon的用法,经过学习以后了解:
1. setDaemon需要在start方法调用之前使用
2. 线程划分为用户线程和后台(daemon)进程,setDaemon将线程设置为后台进程
3. 如果jvm中都是后台进程,当前jvm将exit。(随之而来的,所有的一切烟消云散,包括后台线程啦)
4. 主线程结束后,
4.1 用户线程将会继续运行
4.2 如果没有用户线程,都是后台进程的话,那么jvm结束
sample:
1. setDaemon需要在start方法调用之前使用
2. 线程划分为用户线程和后台(daemon)进程,setDaemon将线程设置为后台进程
3. 如果jvm中都是后台进程,当前jvm将exit。(随之而来的,所有的一切烟消云散,包括后台线程啦)
4. 主线程结束后,
4.1 用户线程将会继续运行
4.2 如果没有用户线程,都是后台进程的话,那么jvm结束
sample:
package a.b.c; import java.io.IOException; public class TestThread extends Thread { public TestThread() { } /** *//** * 线程的run方法,它将和其他线程同时运行 */ public void run(){ for(int i = 1; i <= 100; i++){ try{ Thread.sleep(100); } catch (InterruptedException ex){ ex.printStackTrace(); } System.out.println(i); } } public static void main(String [] args){ TestThread test = new TestThread(); // 如果不设置daemon,那么线程将输出100后才结束 test.setDaemon(true); test.start(); System.out.println("isDaemon = " + test.isDaemon()); try { System.in.read(); // 接受输入,使程序在此停顿,一旦接收到用户输入,main线程结束,守护线程自动结束 } catch (IOException ex) { ex.printStackTrace(); } } }
相关文章推荐
- Thread.setDaemon守护线程详解
- Thread的setDaemon(true)方法的作用
- python中thread的setDaemon、join的用法
- 【Java基础】Thread setDaemon 方法
- Thread的setDaemon(true)方法的作用
- Thread的setDaemon(true)方法的作用
- python中thread的setDaemon、join的用法
- python中thread的setDaemon、join的用法
- Android Thread.setDaemon设置说明
- Thread.setDaemon详解
- python中thread的setDaemon、join的用法
- JAVA Thread.setDaemon用法
- Thread的setDaemon(true)方法的作用
- Thread setDaemon
- [Java] Thread.setDaemon(boolean) 后台进程
- Thread.setDaemon详解
- python中thread的setDaemon、join的用法
- Thread.setDaemon() --守护线程
- Thread.setDaemon的用法
- python中thread的setDaemon、join的用法