【发布时间】:2016-11-04 07:00:42
【问题描述】:
我想停止接受来自主线程的连接。我在这里复制了原始代码。在这台服务器上。它为每个连接生成一个新线程。有一个单独的线程来清理连接池和另一个用于用户命令处理的线程都可以完美地工作。我只想停止接受基于用户命令的新连接。主线程中存在accept方法我使用以下逻辑停止接受
while (bListening && (sctCommSocket = accept(sctBaseSocket,(struct sockaddr *)&addrClient,&c)) != INVALID_SOCKET)
但是在将 bListening 设置为 true 之后.. 循环仍然接受 1 个连接.. 但这不是预期的。请解释
【问题讨论】:
-
不修复此问题可能更容易,只需断开不需要的连接即可。
标签: c++ multithreading networking