每个通道的Netty IdleStateHandler
嗨,当IdleStateHandler添加到管道中时,我遇到了一个问题。 当我使用每个通道的Netty IdleStateHandler,netty,Netty,嗨,当IdleStateHandler添加到管道中时,我遇到了一个问题。 当我使用 m_channel.pipeline().addFirst("idleStateHandler", new IdleStateHandler(0, 0, 30)); 我说,如果在30秒内没有任何活动(读或写),每个频道都会触发IDLState事件。但此设置适用于定义IdleStateHandler的管道处理的每个通道。 问题是如何为每个通道设置不同的空闲时间?我不理解这个问题。。。每个ChannelPipeli
m_channel.pipeline().addFirst("idleStateHandler", new IdleStateHandler(0, 0, 30));
我说,如果在30秒内没有任何活动(读或写),每个频道都会触发IDLState事件。但此设置适用于定义IdleStateHandler的管道处理的每个通道。
问题是如何为每个通道设置不同的空闲时间?我不理解这个问题。。。每个ChannelPipeline只分配给一个通道,因此它应该像aspected一样工作。如果netty bugtracker上没有出现问题,那么ChannelPipeline是特定于通道的,您可以自定义通道IdleStateHandler,但在初始化IdleStateHandler之前,您还需要提供一个计时器。我认为管道是一个跨整个通道共享的单个实例,如果我错了,请纠正我,使用DSL,我定义了一个为每个通道克隆的管道,因此每个通道都有自己独特的管道。现在听起来不错。每个频道都有自己的频道管道。