Netty 4中的IdleStateHandler?
我已经将它添加到我的管道中,LoggingHandler正在捕获它的事件,但是由于事件系统从Netty 3更改为4,当IdleStateAwareUpstreamHandler不再存在时,我如何处理这些事件 日志处理程序: 2012年12月31日下午5:46:19 io.netty.handler.logging.LoggingHandler 信息:[id:0xfef88037,/127.0.0.1:63531=>/127.0.0.1:7633]用户事件:写入程序空闲(0,30001ms)Netty 4中的IdleStateHandler?,netty,Netty,我已经将它添加到我的管道中,LoggingHandler正在捕获它的事件,但是由于事件系统从Netty 3更改为4,当IdleStateAwareUpstreamHandler不再存在时,我如何处理这些事件 日志处理程序: 2012年12月31日下午5:46:19 io.netty.handler.logging.LoggingHandler 信息:[id:0xfef88037,/127.0.0.1:63531=>/127.0.0.1:7633]用户事件:写入程序空闲(0,30001ms) 谢谢
谢谢 首先,确保管道中有一个
IdleStateHandler
,并且希望在IdleStateEvent
上获得通知的处理程序放在IdleStateHandler
之后
channelstateholder
和ChannelInboundHandler
有一个名为usereventtrigged()
的事件处理程序方法。您可以按如下方式实现该方法:
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object evt) {
if (evt instanceof IdleStateEvent) {
...
}
}
该事件是如何触发的?从某种意义上说,我们如何配置触发的延迟?IdleStateHandler是您想要的吗?编辑以回答@Abe的问题。