我有一个情况-
处于已建立状态的 A-->B 之间存在 TCP 连接。A 向 B 发送几个字节,然后自行终止。B 既不做 send() 也不做 recv()。
我想知道是否有办法知道连接已断开。
我知道,对于断开的连接,recv() 返回“0”。但是在上述情况下 - A 已经向 B 发送了一些数据,所以第一个(一个或多个)recv() 会返回给我发送的数据,最后我会得到 recv() == 0。但我想知道断开连接,而不必从 recv 缓冲区中抽出所有数据。
- 我想收到有关传入 FIN/RST 数据包的通知
- 我已经激活了 keep-alive,所以我想在伙伴未回复 keep-alive 数据包时收到通知
谢谢,桑迪普