我的问题是,我创建了一个 TCP 连接,当它保持大约 1 小时没有传输任何数据时,它已经与服务器断开连接,但它没有通知我,它已断开连接,我是否应该向服务器发送保持活动数据包? 还是我应该从服务器向客户端发送保持活动数据包?或者我应该发送给两者?
user2511021
问问题
714 次
2 回答
2
是的你应该。几天前我创建了一个 TCP 套接字/服务器应用程序,我遇到了同样的问题。我通过开始发送保持活动数据包来修复它。
如果您发送保持活动数据包,您的问题就会消失。
我听说有人说操作系统会为您发送保持活动数据包,我对此不是很熟悉,但是发送保持活动数据包明确对我有用
于 2013-06-22T05:56:55.257 回答
0
它不会通知我它已断开连接
它不能。除了在您下次尝试 I/O 时引发 EOS 或“连接重置”之外,没有其他方法可以这样做。
我应该发送keepalive数据包吗...
如果你有这个问题,是的。一般来说,可能不会。
于 2013-06-22T10:35:08.703 回答