我正在编写一个多线程的 Winsock 应用程序,并且在关闭套接字时遇到了一些问题。首先,同时打开的套接字数量是否有限制?让我们说像32个插座一样。
我在其中一个套接字上建立连接,并传递信息,一切正常。问题是当我断开套接字然后重新连接到同一个目的地时,我在 SYN 之后从服务器获得 RST。我没有服务器应用程序的代码,所以我无法调试它。
当我使用 SO_LINGER 并在每个会话结束时发送一个 RST 标志时 - 它起作用了。但我不想以这种方式结束我的联系。当不使用 SO_LINGER 时,发送了一个 FIN 标志,但似乎连接并没有真正关闭。
有什么帮助吗?谢谢