标记第三方生成的线程以进行进一步杀戮
本文关键字:进一步 杀戮 线程 第三方 | 更新日期: 2023-09-27 18:33:04
在我们的应用程序中,我们有一个用于处理DAL的外部库。有时它会在一些琐碎的方法上闲逛,例如打开数据库连接。它只是生成另一个线程进行连接,并且该线程永远不会终止。
那么,如何在生成的线程中做一些标记呢?然后我可以遍历应用程序的线程列表,找到这些死线程并杀死它们。
你根本做不到这一点。如果需要此行为,则应使用进程,而不是线程。
教科书的答案是这样的:在这些线程运行的代码的配合下,你可以随心所欲地做到这一点。没有他们的合作,这将永远不会安全或可靠。
修复库或通过将库包装在服务进程中来将库与代码隔离。如果线程出现故障或卡住,则其进程上下文将被污染。