识别与C ++中的Socket断开连接的客户端

时间:2016-10-19 19:42:21

标签: c++ sockets networking boost

我有一个C ++服务器,其中客户端将连接到服务器套接字并获取搜索结果。我正在使用Boost库进行Socket编程。

客户端连接的所有搜索结果都将有5个。这些搜索结果对于服务器计算来说是昂贵的,并且计算以迭代方式完成。现在多次发生的事情是客户在收到2或3个搜索结果的结果后断开连接。我想在发出请求的客户端断开连接后立即停止搜索处理线程。确认该API的最佳API调用是什么?如果可能的话,我愿意在boost之上编写自己的包装器。

我只使用HTTP。

感谢

1 个答案:

答案 0 :(得分:1)

检测TCP断开连接的唯一方法是对其进行I / O操作。在一些发送给已断开连接的对等体后,您将获得ECONNRESET。由于TCP缓冲,第一次发送不会发生这种情况。