n_g*_*n_g 0 java multithreading jvm
" 如果最后一个非守护程序线程已经完成,虚拟机将终止." 我的问题是,应用程序产生的守护程序线程会发生什么?为什么JVM不等他们完成?
守护程序线程的全部目的是,如果它是唯一运行的线程,它不会使JVM保持活动状态; 这是设计的.您可能希望这样做有很多原因.
例如,使用Swing应用程序,用户可能已经在后台守护程序线程上调用了长时间运行的任务(而不是在事件调度线程上).在任务完成之前,用户尝试退出应用程序.在此阶段,应用程序开发人员可能已经决定最好立即关闭应用程序,而不是将关闭尝试延迟到长时间运行的计算完成,因此为什么这些决定分配计算线程守护程序状态.
| 归档时间: |
|
| 查看次数: |
582 次 |
| 最近记录: |