在我们的Java应用程序中(更准确地说是在Tomcat中运行的WAR),线程有时需要等待很长时间才能进行网络通信或类似情况Socket.read(...)
。例如,如果未设置连接/读/写超时,则使用Java Mail库进行操作。
由于这可能是生产上的问题,因此有时不能快速部署:
问题: 是否有可能(以及如何) on Linux to" force" 特定线程从外部程序的中断(意思是,不修改现有应用程序) - 就像调试器,进程的OS信号或类似情况一样。
线程不能被杀死 - 我只需要确保Java抛出"中断异常"来自它目前被封锁的方法。