Hi,大家好,我是Mic
一个工作了3年的粉丝,在面试的时候遇到一个线程相干问题。
想让我帮他解答一下。
问题是,“什么是守护线程,它有什么特点”
上面看看高手的答复。
高手:
好的。
守护线程,它是一种专门为用户线程提供服务的线程,它的生命周期依赖于用户线程。
只有JVM中依然还存在用户线程正在运行的状况下,守护线程才会有存在的意义。
否则,一旦JVM过程完结,那守护线程也会随之完结。
也就是说,守护线程不会阻止JVM的退出。然而用户线程会!
守护线程和用户线程的创立形式是完全相同的,咱们只须要调用用户线程外面的setDaemon办法并且设置成true,
就示意这个线程是守护线程。
因为守护线程领有本人完结本人生命的个性,所以它适宜用在一些后盾的通用服务场景外面。
比方JVM外面的垃圾回收线程,就是典型的应用场景。
这个场景的非凡之处在于,当JVM过程技术的时候,内存回收线程存在的意义也就不存在了。
所以不能因为正在进行垃圾回收导致JVM过程无奈技术的问题。
然而守护线程不能用在线程池或者一些IO工作的场景外面,因为一旦JVM退出之后,守护线程也会间接退出。
就会可能导致工作没有执行完或者资源没有正确开释的问题。
以上就是我对这个问题的了解。
总结
这个问题,大部分工作年限比拟长的同学也不肯定能答复上来。
首先线程这个畛域在业务开发中自身应用就比拟少
而守护线程接触就更少了。
我始终认为,只有积攒足够多的技术,能力更从容的应答将来久远的职业倒退。
喜爱我作品的小伙伴,记得点赞珍藏加关注。
版权申明:本博客所有文章除特地申明外,均采纳 CC BY-NC-SA 4.0 许可协定。转载请注明来自Mic带你学架构
!
如果本篇文章对您有帮忙,还请帮忙点个关注和赞,您的保持是我一直创作的能源。欢送关注同名微信公众号获取更多技术干货!