守护程序线程 - 用例

时间:2013-09-21 13:32:04

标签: java multithreading daemon

守护程序线程为用户线程提供服务,除了gc可以使用守护程序线程的另一个示例(case)是什么? (在实践中run() daemon的{​​{1}}方法内的任何任务(逻辑)

3 个答案:

答案 0 :(得分:5)

以下是您可能想要使用守护程序线程的简短列表:

  • 收集统计信息并执行状态监控任务 - 发送和接收网络检测信号,为监控工具提供服务等。
  • 执行异步I / O任务 - 您可以创建I / O请求队列,并设置一组守护程序线程,以异步方式为这些请求提供服务。
  • 侦听传入连接 - 守护程序线程在这种情况下非常方便,因为它们允许您编写一个简单的“永远”循环,而不是创建一个注意来自主线。

答案 1 :(得分:2)

听起来像是一个转让问题哈哈。

您也可以将它们用于IO,因为IO操作块以及最好在工作线程中执行此操作。

如果您正在等待下载等内容,例如对帖子请求的回复,也可以进行网络活动。

答案 2 :(得分:1)

守护程序线程通常用于为您的应用程序/ applet执行服务(例如加载“fiddley位”)。用户线程和守护程序线程之间的核心区别是,JVM只会在所有用户线程终止时关闭程序。当不再有任何用户线程运行时,守护程序线程由JVM终止,包括执行的主线程。

简而言之:守护程序线程不会阻止程序退出;用户线程使程序不会退出。