替代为每个连接的客户端维护服务器端的计时器

时间:2016-01-11 12:02:10

标签: sockets timer pthreads client-server posix

我有一个服务器端应用程序,其中需要在收到来自客户端的第一条消息时启动计时器(3分钟)。最多可以有100个客户端连接到服务器。因此,需要为100个线程(每个客户端)的每个客户端维护100个定时器。是否有任何替代解决方案来维护这100个计时器(如使用epoll)?

编辑:计时器的目的是检查在接下来的3分钟内是否有来自客户端的消息。如果没有出现错误指示。如果消息在3分钟内到来,则计时器到期并再次重新启动。

1 个答案:

答案 0 :(得分:0)

另一种解决方案就是拥有一个计时器,用于最早到期的客户端。当该计时器到期(或被取消)时,您为下一个最早到期的客户端设置一个新的计时器。