0

我有运行 TCP 服务器的应用程序。要初始化 TCP,我运行WSAStartup(). 然后我需要加载第三方dll。Dll 也做一些 TCP 工作并且有一些错误 - 它运行WSACleanup()而不运行WSAStartup()。这个错误会阻止我的 TCP 服务器,因为 dll 会WSACleanup()杀死它。

我无法修复dll。如何避免这种情况。看起来在不同线程中运行使用 dll 和我的 TCP 服务器没有帮助

4

1 回答 1

1

正如您在WSAStartup文档中看到的,WSAStartup/WSACleanup执行内部引用计数。因此,您需要做的就是调用WSAStartup两次。

因此,当您的库调用 时WSACleanup,它只会将内部计数减少一并且不会释放所有资源。

于 2014-04-22T13:28:34.420 回答