有成千上万个客户端接入的时候,才不应该使用 m:n 模型啊。此时一个 socket fd 的收发各使用一个线程,和一整个 socketfd 在一个线程内处理没啥区别。
m:n 模式最好的地方应该是那种超大带宽超大吞吐连接数量不多的场景才对。
【 在 ylh1969 的大作中提到: 】
: 全双工服务器远比你想象的复杂,典型的游戏服务器,有成千上万的客户端接入。
: 每一个accept的客户端,创建一个与socket关联的task,在系统中注册,一个新玩家。
: 随后这个task被丢进M:N的调度器,如epoll,准备接收它的信息。这个task不可以向自己的socket发送信息,因为别人也可以发,会打架。
: ...................
--
FROM 110.84.123.*