我来说一下我的理解吧。你不要把思维放在守护两个字上,守护线程并不是说这个线程守护了什么。
守护线程就是说当你这个程序其他的线程都结束了,剩下的线程都是守护线程的话就结束这些守护线程
咱直接拿程序的例子来说吧
一个程序是先从主线程,也就是main函数来执行的
现在除了主线程还有两个线程,t1和t2,你把t1设置成守护线程
如果主线程和t2都结束了,那么t1也会结束
如果把t1和t2都设置成守护线程,那么当主线程结束之后,t1和t2就会自动结束了
守护线程的作用:
还是举个例子吧,比如说一个多线程的例子,其中有一个线程所要执行的代码加入了判断,等待等条件,他不能自动结束。那么程序运行之后就不能自动结束了,因为这个线程一直会挂着
这个时候可以把这个线程设置为守护线程,那么当其他的线程执行完之后,这个线程就也会自动结束了 |