C++ TCP连接在1条消息后中断

C++ TCP连接在1条消息后中断,c++,networking,tcp,C++,Networking,Tcp,我有一个与DNS服务器通信的项目。例如,我使用谷歌的DNS服务器。连接到服务器并发送消息后,一切正常,服务器返回答案。但是当我发送第二个查询时,服务器已经自己关闭了连接(发送FIN),现在我向无效的fd发送了一条消息。此问题是否有已知的解决方案?来源: 服务器应假定客户端将启动连接 关闭,并应延迟关闭其连接端,直到 所有未完成的客户请求均已得到满足 这意味着,如果同时发送多个请求,则连接将保持打开状态,直到所有请求都得到响应。但一旦不再有未决请求,连接就可以关闭 如果您想发出多个请求,那么您需要

我有一个与DNS服务器通信的项目。例如,我使用谷歌的DNS服务器。连接到服务器并发送消息后,一切正常,服务器返回答案。但是当我发送第二个查询时,服务器已经自己关闭了连接(发送FIN),现在我向无效的fd发送了一条消息。此问题是否有已知的解决方案?

来源:

服务器应假定客户端将启动连接 关闭,并应延迟关闭其连接端,直到 所有未完成的客户请求均已得到满足

这意味着,如果同时发送多个请求,则连接将保持打开状态,直到所有请求都得到响应。但一旦不再有未决请求,连接就可以关闭

如果您想发出多个请求,那么您需要一次发送所有请求,或者为每个请求创建新的连接