使用netty 3.6.2
的应用程序出现了一个奇怪的问题。该应用程序与许多客户端保持连接,一切正常,但在一段时间(大约2小时)后,客户端断开连接无法正常处理。尽管应用程序调用{{1}}方法,但通道未关闭,并且channel.close()
的{{1}}方法未被触发。我完全确定在channelClosed
上调用了SimpleChannelHandler
方法,但不知何故netty没有关闭该频道。我有点困惑,因为我在日志中找不到任何例外。任何人都可以告诉我为什么会发生这种情况吗?
答案 0 :(得分:0)
Netty以异步方式执行此操作,您可以通过进行堆栈转储来检查IO线程是否正忙。或者您可以调试以查看是否有东西阻止了它。