0

是否最好启动一个线程来处理一个客户端,另一个线程用于连接但告诉他们服务器很忙,或者我应该坚持使用单线程方法,其中同一个线程接受并处理客户端,以便其他人可以没有连接到它?(如果是这样的话)

编辑:我应该注意不会有 239482340 人连接到它。通常只有一个人会连接到服务器,但我希望我的应用程序能够处理另一个尝试连接而不会摔倒的人。

4

2 回答 2

0

坚持使用单线程对服务器来说更好,因为资源消耗非常低。但是,这对客户端来说可能很烦人,因为它不知道服务器是否有问题或者只是忙。

让线程告诉其他用户服务器正忙会占用更多资源,但对客户端更好。

在您的特定情况下,任何一种方法都应该没问题。我想这真的取决于客户和他们想要什么...... :-/

于 2013-02-24T20:14:25.110 回答
0

构建此类系统通常使用两种主要策略:

  • 基于多线程策略的解决方案,为每个传入的请求分配不同的线程或进程。该模型用于许多商业服务器
  • 事件驱动模型基于使用非阻塞 I/O 操作来同时响应来自不同客户端的多个请求。这是一种不断增长的方法。
于 2013-02-24T20:21:06.313 回答