gpt4 book ai didi

java - 为什么客户端套接字可以检测到服务器套接字关闭,但反之则不行?

转载 作者:行者123 更新时间:2023-12-02 05:17:30 25 4
gpt4 key购买 nike

在我的客户端-服务器关系的 tcp 实现中,我注意到只有客户端套接字能够检测服务器套接字何时关闭。如果没有心跳的帮助,服务器套接字无法检测到客户端断开连接。

为什么这是片面的?从服务器套接字的角度来看,是否有心跳的替代方法来检测连接是否仍然有效?感谢链接!

最佳答案

客户端服务器没有这样的限制。这意味着您的实现要么是错误的,要么是您做出了错误的假设。

来自 TCP/IP 的对等方的关闭只能由应用程序检测到:

  • 如果本地应用程序尝试读取,但由于连接被对等方关闭而导致读取失败。
  • 如果本地应用程序尝试写入,但由于连接被对等方关闭而导致写入失败。

如果您既不尝试读取也不尝试写入,则无法检测到对等方的连接关闭。无论您是客户端还是服务器都没有关系。

关于java - 为什么客户端套接字可以检测到服务器套接字关闭,但反之则不行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26795236/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com