我想创建服务器套接字,该套接字将始终能够接受新客户端,但是它具有诸如“回合”的逻辑。在该回合开始时,只有连接的套接字将能够参与,服务器将期待从中得到答案(当时是一个答案,然后进行处理并向下一个套接字发出信号,表示他必须做出响应)。当回合正在进行时,其他客户端可以连接,但是他们将不得不等待下一个回合。
我的问题是,我可以使用同步服务器来做到这一点还是必须使用异步(在这种情况下,我不知道如何要求每个客户端在给定的时间做出响应)
答案 0 :(得分:0)
我建议不要在套接字连接基础上建立会话,而是在客户端连接时将它们分配到一个回合并分配一个会话令牌。如果正在进行一轮,则将客户端分配给下一轮,并且直到接收到表示下一轮已经开始的消息之前,它们不会交互。这样做,您可以从服务器端管理交互,如果客户端失去连接,他们可以重新连接并重新提交会话令牌,他们已经必须继续进行会话。您可能会有这些会话令牌超时等。