我有一个 Java socket.io 服务器,基于 netty 实现(com.corundumstudio.socketio)。
服务器使用一些封闭源代码处理请求,有时,请求可能会无限期地卡住。
当请求卡在 synchronized{} 块中时,最大的问题就开始了,因此它们一直持有资源,并且无法满足其他请求。
我想添加一个选项来停止/终止特定线程,这样它就不会停止整个应用程序。
Thread.stop() 已被弃用,而且显然也不适用于 netty,因为 netty 捕获 ThreadDeath 异常并将其转换为无害的警告消息......
添加中断标志是不可能的,因为困难的代码已关闭。
什么是实现服务器以使其在这方面稳健的好方法?