在守护程序线程上调用加入为什么不好



我正在读这篇文章,所以关于守护程序线程和答案底部的报价是:

但加入妖魔线程很可能会打开 麻烦!

为什么究竟被视为不良习惯?我了解.join()块,无论该线程是否是守护程序,但我不明白为什么它被认为是不良练习。有人可以解释吗?

守护程序线程的相关性及其定义是,它不会阻止JVM在程序完成时退出,但线程仍在运行。

对于任何线程,旨在在程序完成之前运行和结束,是守护程序线程。

从此合乎逻辑的结论是,只要程序运行。

任何设计良好

因此,在守护程序线程上加入意味着连接将阻塞,直到守护程序螺纹结束为止,假设它是设计良好的守护程序线程,从来没有。如果此阻止join()防止执行进一步的有用代码,那将永远不会发生,并且可能会卡住您的代码。

最新更新