我有一个使用 的项目,Netty
但存在一些问题:
如果connection
闲置一段时间,是否connection
会自行关闭?如果它自己关闭,我该如何设置关闭时间?
有5个线程,他们发送100个数据。他们使用相同的频道,例如
/** release connect*/
public void closeConnect(ChannelFuture writeFuture){
if(writeFuture != null){
writeFuture.awaitUninterruptibly();
}
future.getChannel().close();
future.getChannel().getCloseFuture().awaitUninterruptibly();
client.releaseExternalResources();
}
//write data
ChannelFuture future = Channels.write(data);
closeConnect(future);
上面的代码将产生一个closeChannelexception
. 我的问题是:如何避免异常?
此外,当我ReadTimeoutHandler
在客户端使用并设置timeout
= 5s,并使线程休眠 6s 时,就会ReadTimeoutException
发生。当我调用e.getChannel().close()
时,它还会创建一个closeChannelException
. 如何自己处理异常或无异常关闭连接?