JAVA-初步认识-第十四章-多线程(守护线setDaemon)
一.
除了interrupt方法,还有其他方法,
我们要介绍线程类中常见的一些方法,比如说setDaemon,
还是结合之前的例子来讲解,t1和t2两个线程,我们中断了一个,另一个没有中断,那么DOS结果就结束不了。
可是如果在开启t2之前,将其设置成守护线程的话,守护听不懂,可以将它认为是后台线程。以前认识的线程都是前台线程,
DOS结果显示为结束了。
两者有什么区别呢?后台线程的特点在于,它和前台线程都正常进行开启,就是结束不一样,运行都一样,互相抢夺cpu的执行权,结束的时候,前台线程必须要进行手动结束,比如说设定标记的形式将其结束掉,你不结束它就会一直在这等待,在这耗费资源,在等待cpu对其进行处理。而对于后台线程叫做,如果所有的前台线程都结束了,后台线程无论处于什么状态,都自动结束,后台好像对前台有一种依附关系,你在我也在,你运行我也运行,你消失我也消失。前台线程就不是了,这个消失了,这个还在。
这有用吗?简单举个例子。你负责输入,我负责输出,你不输入,我就不输出,你都完事儿了,我还有必要存在吗?我可以设置成后台的。
后台线程就说到这。如果想要线程做一个最基本的依附动作,它什么时候结束根据其他线程而定的话,就可以把他定义为后台的,