c++ TCP连接关闭

C++ TCP connection closing

本文关键字:连接 TCP c++      更新时间:2023-10-16

我有一个c++应用程序a,它打开一个TCP连接到应用程序B。应用程序C知道这个连接,可以从B端关闭套接字。我的问题是:我怎么知道连接在正常关闭时已经关闭,还是网络连接有问题?目前我有一个超时,它知道什么时候没有接收,但这并不表明正确的关闭或网络连接问题。

我听说这是一个TCP连接,如果应用程序C正确关闭连接,操作系统必须知道它,你知道我怎么知道在应用程序a中连接已经正确关闭吗?

如果你能附上一个c++示例,将会很有帮助。

如果连接已正确关闭,recv()将返回零。如果关闭不当,recv()最终将超时(尽管可能有其他原因),而send()最终将返回-1,并带有errno ECONNRESET或其他名称。