从多个客户端到服务器的交叉消息

时间:2011-06-12 12:57:57

标签: c linux sockets pthreads

此问题与Socket programming in CSleeping a worker thread in a file server有关。

我对socket和pthreads都很陌生,不得不处理一个大项目。

我想知道下面的情况是否可行以及如何?  我有多个客户端到服务器,每个客户端向服务器发送多个消息。每个客户端由任务/工作线程提供服务。客户端发送消息,并在收到回复后发送下一条消息,直到完成并关闭连接。任务线程处理来自客户端的一个请求,发送其回复并休眠,直到它收到来自同一客户端的下一条消息,直到客户端关闭连接并退出线程。

现在,正如我所说,多个客户端同时连接。服务器是否会处理来自一个客户端的所有消息,然后在接收到所有“实时”客户端的连接时,以交错的方式处理下一个消息或接收消息。

1 个答案:

答案 0 :(得分:0)

  

服务器是否处理来自一个客户端的所有消息,然后在接收到所有“实时”客户端的连接时,以交错的方式处理下一个消息或接收消息。

服务器进程可以同时或以交错方式处理多个客户端,具体取决于CPU和编程体系结构。

线程编程+多核或多CPU可以同时处理这些请求。 ^ _ ^