java后端面经--名词:守护线程(Daemon)

本文深入探讨了Java中的守护线程和用户线程,强调了守护线程不可控的终止特性和其服务性质。当所有用户线程结束时,守护线程随之终止。GC垃圾回收线程即为例证。此外,守护线程适用于后台服务支持和程序快速关闭场景。了解这些概念对于优化多线程程序至关重要。

 

线程分为:守护线程和用户线程。任何一个守护线程会为所有用户线程服务。

特点:

1,守护线程的终止是自身无法控制的,依赖于进程运行,进程终止,守护线程一定关闭。

2,守护线程产生的线程必定是守护线程

GC垃圾回收线程是守护线程。

应用场景:

1,为其他线程提供服务支持

2,在任何情况下,程序结束时,这个线程必须正常且立刻关闭,就用守护线程,

"02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 2 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_2 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_2 /data/vendor/time/ats_2 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_2 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 3 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_3 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_3 /data/vendor/time/ats_3 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_3 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 4 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_4 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_4 /data/vendor/time/ats_4 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_4 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 5 02-26 05:15:38.485 root 1294 1294 D vendor.xiaomi.hardware.mimd2: succeed registered timer 10 to TimerManager 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_5 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_5 /data/vendor/time/ats_5 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_5 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 6 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_6 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_6 /data/vendor/time/ats_6 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_6 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 7 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_7 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_7 /data/vendor/time/ats_7 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_7 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 8 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_8 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_8 /data/vendor/time/ats_8 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_8 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 9 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_9 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_9 /data/vendor/time/ats_9 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_9 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 10 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_10 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_10 /data/vendor/time/ats_10 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_10 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 11 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_11 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_11 /data/vendor/time/ats_11 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 root 1294 1297 D vendor.xiaomi.hardware.mimd2: PolicyManager, 0 policyThread run 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_11 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 12 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_12 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_12 /data/vendor/time/ats_12 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_12 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 13 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_13 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_13 /data/vendor/time/ats_13 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_13 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 14 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_14 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_14 /data/vendor/time/ats_14 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_14 02-26 05:15:38.485 root 1294 1299 D vendor.xiaomi.hardware.mimd2: PolicyManager, 2 policyThread run 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 15 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_15 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_15 /data/vendor/time/ats_15 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_15 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 16 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_16 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_16 /data/vendor/time/ats_16 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_16 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 17 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_17 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_17 /data/vendor/time/ats_17 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_17 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_post_init:Error in accessing storage 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:genoff_pre_init::Base = 18 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon: Storage Name: ats_18 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Opening File: /mnt/vendor/persist/time/ats_18 /data/vendor/time/ats_18 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:time_persistent_memory_opr:Genoff Read operation 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Open File: /data/vendor/time/ats_18 02-26 05:15:38.485 1000 1292 1292 D QC-time-services: Daemon:Unable to open filefor read"
最新发布
09-13
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值