我与服务器a建立了java套接字连接。服务器a在白天随机重启,我的java套接字连接无限等待,因为它认为它正在接收数据。我已经安排好了时间,但它只是在阅读还在进行的时候才开始。如何设置套接字连接的强制超时?我想在一段时间后断开套接字连接。
Socket mySocket = new Socket(host, port) ; mySocket.setKeepAlive(true); mySocket.setSoTimeout(timeout);
oxcyiej71#
你不需要定期断开连接。您可以只使用tcp keepalive机制在定义的时间间隔内发送小的“ping”请求。当其中一方没有响应时,tcp连接将关闭。更多信息请点击此处:https://en.wikipedia.org/wiki/keepalive
1条答案
按热度按时间oxcyiej71#
你不需要定期断开连接。您可以只使用tcp keepalive机制在定义的时间间隔内发送小的“ping”请求。当其中一方没有响应时,tcp连接将关闭。更多信息请点击此处:https://en.wikipedia.org/wiki/keepalive