SO_TIMEOUT in non blocking channel in netty

2019-04-30 15:45发布

问题:

Does the SO_TIMEOUT expire the Non blocking channel , if a channel doesn't receive a read/response in timeout millis?

bootstrap.group(workerGroup).channel(NioSocketChannel.class).
.handler(channelInitializer).option(ChannelOption.SO_TIMEOUT, 100);

Also, is the option applicable for server channel also? like:

serverBootstrap.group(bossGroup, workerGroup).channel(NioServerSocketChannel.class).
localAddress(new InetSocketAddress(8800)).childHandler(serverChannelInitializer).
option(ChannelOption.SO_TIMEOUT, 100).bind().sync();

回答1:

No. SO_TIMEOUT has effect only for OIO socket transport. You should use IdleStateHandler and handle an IdleStateEvent in your userEventTriggered() implementation.



标签: netty