超时连接后如何关闭TCP连接?
Posted
技术标签:
【中文标题】超时连接后如何关闭TCP连接?【英文标题】:How to close TCP connection after time out connection? 【发布时间】:2022-01-20 03:44:36 【问题描述】:HttpClient httpClient= HttpClient.create().tcpConfiguration(tcpClient ->
tcpClient.option(ChannelOption.SO_KEEPALIVE, true);
tcpClient.option(EpollChannelOption.TCP_KEEPIDLE, 120);
tcpClient.option(EpollChannelOption.TCP_KEEPINTVL, 10);
tcpClient.option(EpollChannelOption.TCP_KEEP, 6);
return tclClient;
)
.secure(t -> t.sslContext(context));
此代码正在创建一个 10 分钟的 TCP 连接。之后,我想在发生 TimeOutException 时从应用程序端关闭 TCP 连接。怎么办?
【问题讨论】:
【参考方案1】:在 try catch 块之后,只需使用 finally 块并关闭您的连接:
try
...
catch (TimeOutException exp)
...
finally
...
connection.close();
...
【讨论】:
以上是关于超时连接后如何关闭TCP连接?的主要内容,如果未能解决你的问题,请参考以下文章