`
ssydxa219
  • 浏览: 622207 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

daemon thread

 
阅读更多

用户线程:是你自己写的,可以手工调用;
守护线程(Daemon Thread):简单的说就是是后台线程,
  --他只在后台运行
  --他不需要手工调用,自动运行;
  --他的任务是为其他线程服务;(jvm垃圾回收就是典型的后台线程)
  --当所有前台线程死亡,后台线程生命结束。
  (前台所有线程死亡后,JVM会自动通知后台线程死亡)
===前台线程要变成后台线程要在线程start()之前,否则会报错
守护线程与普通线程的唯一区别是:当JVM中所有的线程都是守护线程的时候,JVM就可以退出了;如果还有一个或以上的非守护线程则不会退出。(以上是针对正常退出,调用System.exit则必定会退出)  
   
   
  所以setDeamon(true)的唯一意义就是告诉JVM不需要等待它退出,让JVM喜欢什么退出就退出吧,不用管它。

分享到:
评论

相关推荐

    java中的daemon thread

    java中的daemon thread java中有两种类型的thread,user threads 和 daemon threads。 User threads是高优先级的thread,JVM将会等待所有的User Threads运行完毕之后才会结束运行。 daemon threads是低优先级的...

    Java 守护线程,看这篇文章就对了! ( Daemon Thread )

    Java 的守护线程什么是Java的守护线程( Daemon Thread )?守护线程的区别?守护线程的作用?守护线程如何创建?守护线程如何判断?守护线程使用的注意事项总结 什么是Java的守护线程( Daemon Thread )? Java 提供...

    Java课件\thread.rar

    6. **守护线程(Daemon Thread)** - 守护线程不阻碍程序退出,当所有非守护线程结束时,程序会退出,即使仍有守护线程运行。 7. **线程池** - 使用`ExecutorService`和`ThreadPoolExecutor`管理线程,可以有效...

    Thread详细实例介绍演示

    - **守护线程(Daemon Thread)**:默认情况下,主线程是非守护线程。当所有非守护线程结束后,JVM才会退出。守护线程是为了服务其他线程而存在的,如垃圾收集器。设置线程为守护线程的方法是`setDaemon(true)`,...

    ThreadDaemon.class

    ThreadDaemon.class

    ThreadDaemon.java

    ThreadDaemon.java

    守护进程(java)

    在这段代码中,`daemonThread`被设置为守护线程,当其他非守护线程结束时,JVM会继续运行该线程直到其完成任务。 守护线程通常用于执行一些后台任务,如资源清理、日志记录、定时任务等。由于它们在所有非守护线程...

    JavaThread中断机制共11页.pdf.zip

    守护线程(Daemon Thread)在所有非守护线程结束后自动终止,此时,即使守护线程被中断,也不会有任何效果,因为整个Java虚拟机即将关闭。 10. **中断的局限性** 中断机制并不适用于所有情况,例如,如果线程被...

    java Thread

    守护线程(Daemon Thread)是一种特殊的线程,当所有非守护线程结束时,程序会退出,即使还有守护线程在运行。通过调用setDaemon(true)方法可将线程设置为守护线程。 六、线程中断 1. interrupt()方法:用于中断...

    python多线程专题

    daemon = threading.Thread(target=daemon_thread, daemon=True) daemon.start() # 主线程其他代码 ``` 在这个例子中,即使主线程结束,守护线程仍然会继续运行。 6. **线程状态信息** Python的`threading`模块...

    thread多线程学习记录

    在实际应用中,我们还需要考虑线程优先级、守护线程(Daemon Thread)以及线程组等特性。线程优先级可以影响线程调度,但Java的线程调度并不完全依赖于优先级,因此使用时需谨慎。守护线程是一种后台线程,当所有非...

    javathread.part104.rar

    8. **守护线程(Daemon Thread)**:守护线程不会阻止程序的退出,常用于后台服务,如垃圾回收器就是典型的守护线程。 9. **线程池(ThreadPool)**:通过`ExecutorService`和`ThreadPoolExecutor`,可以创建和管理...

    javathread.part03.rar

    8. **守护线程(Daemon Thread)**: 守护线程在所有非守护线程结束后自动终止,常用于后台服务,如垃圾回收器。 9. **中断线程**: `interrupt()`方法可以标记一个线程为中断状态,但不会立即停止线程。线程应...

    java实现后台进程

    Thread daemon = new Thread(() -> { // 守护线程代码 }); daemon.setDaemon(true); daemon.start(); ``` 六、Spring框架中的Async注解 在Spring框架中,可以使用@Async注解标记方法以异步方式执行,Spring会自动...

    多线程thread线程的理解

    10. **守护线程(Daemon Thread)**:守护线程在没有非守护线程运行时自动结束,常用于后台服务,如垃圾收集器。 通过学习和实践上述知识点,你将能够深入理解多线程编程,并能有效利用这一技术提高程序的性能和...

    06_Thread_java_boardkbl_

    6. **守护线程(Daemon Thread)** 守护线程是为其他线程服务的线程,当所有非守护线程结束时,即使守护线程还在运行,JVM也会退出。默认情况下,用户创建的线程都不是守护线程,可以通过`setDaemon(true)`将其设置...

    thread.zip

    6. **守护线程(Daemon Thread)**:与用户线程相对,守护线程不阻碍程序退出。例如,垃圾回收器就是典型的守护线程。 7. **线程池**:`ExecutorService`和`ThreadPoolExecutor`是Java并发框架的一部分,它们允许...

    java Thread & synchronized & concurrent 线程、同步、并发

    在`DaemonThreadTest.java`这个文件中,可能涉及到了Java的守护线程(Daemon Thread)。守护线程是一种特殊的线程,它的主要作用是为其他非守护线程提供服务。当所有的非守护线程都结束时,即使还有守护线程在运行,...

    java多线程应用实现方法

    6. 守护线程(Daemon Thread): 守护线程是一种特殊的线程,当所有非守护线程结束时,守护线程也会自动终止。通常用于后台服务,如垃圾收集器。 7. 线程优先级: Java中的线程有优先级,但实际线程调度仍然由操作...

Global site tag (gtag.js) - Google Analytics