限制套接字并发连接

时间:2014-01-23 21:40:43

标签: c sockets

我的服务器套接字可以支持最大可能的连接。但是,我如何限制并发连接的数量,以便它可以同时支持至少5个但不超过20个客户端。

1 个答案:

答案 0 :(得分:1)

您有两种选择:

  1. 根本不要再打电话accept()然后你就准备好了。如果您已连接20个客户端,请再次停止呼叫accept(),直到客户端先断开连接。

  2. 继续正常呼叫accept(),但如果您已连接20个客户端,请立即致电close()(或Windows上为closesocket())。

    一个。 Windows上的此类变体仅用于WSAAccept()。它允许您指定回调以有条件地接受客户端。您可以让它返回CF_REJECT,同时已连接20个客户端。这样,WSAAccept()将永远不会允许超过20个客户端同时连接。