在c++中识别一个与Socket断开连接的客户端
Identify a client disconnected from a Socket in C++
我有一个c++服务器,其中客户端将连接到服务器套接字并获取搜索结果。我使用Boost库为我的套接字编程。
将有5个搜索结果,其中客户端连接。对于服务器来说,这些搜索结果的计算成本很高,并且计算是以迭代的方式完成的。现在经常发生的情况是,客户端在收到2或3个搜索结果后断开连接。我希望在发出请求的客户端断开连接时立即停止Search处理线程。确认这一点的最佳API调用是什么?如果可能的话,我愿意在boost的基础上编写我自己的包装器。
我只使用HTTP。
谢谢
检测TCP断开连接的唯一方法是对它执行I/O操作。在一些发送到已断开连接的对等端后,您将获得ECONNRESET。由于TCP缓冲,第一次发送时不会发生这种情况
相关文章:
- 当套接字连接断开时检测C/C++Unix
- 升压信号2将插槽传递到成员功能以断开连接
- C/C++:socket() 创建在循环中失败,打开的文件太多
- 不将数据 socket.io c++(客户端)发送到 nodejs(服务器)socket.io
- 通过 Tor 服务C++ socket.io 客户端
- 视频在唤醒其他线程时输入设备断开连接
- 以编程方式重新连接断开的 VHD 链
- SNMP 代理在单元测试期间断开连接
- 操作系统 (Linux) 在使用 boost::asio::generic::raw_protocol::socket
- 断开连接后重新连接boost beast(asio)websocket和http连接时出错
- Make zmqpp::socket::connect a std::future
- 为什么可以重复使用这个boost::asio::tcp::socket
- 如何从 boost::asio::ssl::stream<boost::asio::ip::tcp::socket> 获取本机套接字文件描述器?
- Socket.io客户端C++,从Socket.on获取数组
- 调用socket.remote_endpoint(提升 asio 库)线程安全性
- 如何使用已经存在的 tcp::socket 创建 tcp::iostream?
- 如何从Qt绑定到在Windows 7 / 8 / 10中连接/断开USB设备事件
- 在c++中识别一个与Socket断开连接的客户端
- c++ socket在断开连接后发送数据
- 客户端断开连接时,TCP Socket选择服务器分段错误