C中的队列套接字连接

时间:2015-01-08 00:56:54

标签: c multithreading sockets

在客户端 - 服务器架构中,我有一台服务器接受来自客户端的连接。我希望服务器接受3个同时连接,其余的连接(如果可用)将被保留以FIFO方式提供。 这样做的正确方法是什么?

我想到的一种可能的方法是

创建一个计数器并检查它是否小于3,接受,在新线程中为客户端提供服务,并增加计数器。当counter大于3时,只需接受并将套接字描述符保存在队列中。当客户端完成其工作时,停止该线程(例如通过加入)并递减计数器以允许其他客户端被服务。如果队列不为空,则弹出套接字描述符,创建一个线程并为客户端提供服务。

感谢您的反馈。

0 个答案:

没有答案