空闲的连接和超时

检测空闲链接及超时对于及时释放资源来说是至关重要的。

  • IdleStateHandler:当链接空闲时间太长时,将会触发一个IdleStateEvent事件。然后可以通过在ChannelInboundHandler中重写userEventTrigger方法来处理该IdleStateEvent事件。

  • ReadTimeoutHandler:如果在指定时间内没有收到任何的入站数据,则抛出一个ReadTimeoutException,可以通过重写exceptionCaught方法来检测该ReadTimeoutException。

  • WriteTimeoutHandler:如果在指定时间内没有收到任何的出站数据,则抛出一个WriteTimeoutException,可以通过重写exceptionCaught方法来检测该WriteTimeoutException。

IdleStateHandler在实践中使用的频率最高。