in impl/src/main/java/org/apache/rocketmq/remoting/impl/netty/NettyRemotingServer.java [219:234]
public void userEventTriggered(final ChannelHandlerContext ctx, Object evt) {
if (evt instanceof IdleStateEvent) {
final IdleStateEvent event = (IdleStateEvent) evt;
if (event.state().equals(IdleState.ALL_IDLE)) {
ctx.channel().close().addListener(new ChannelFutureListener() {
@Override
public void operationComplete(ChannelFuture future) throws Exception {
LOG.warn("Close channel {} because of event {},result is {}", ctx.channel(), event, future.isSuccess());
}
});
putNettyEvent(new NettyChannelEvent(NettyChannelEventType.IDLE, ctx.channel()));
}
}
ctx.fireUserEventTriggered(evt);
}