背景前置
在单线程环境下,使用一个线程同时绑定多个事件:连接事件、读事件、写事件。不能充分发挥多核CPU的优势,考虑使用多个线程,每个线程专门负责处理不同的事件,如下图所示:一个线程专门负责连接(accept)事件,其他多个线程专门负责读(Read)事件。
分两组选择器
单线程配一个选择器,专门处理 accept 事件
创建 cpu 核心数的线程,每个线程配一个选择器,轮流处理 read 事件
代码示例
服务端代码:
客户端代码:
在单线程环境下,使用一个线程同时绑定多个事件:连接事件、读事件、写事件。不能充分发挥多核CPU的优势,考虑使用多个线程,每个线程专门负责处理不同的事件,如下图所示:一个线程专门负责连接(accept)事件,其他多个线程专门负责读(Read)事件。
分两组选择器
单线程配一个选择器,专门处理 accept 事件
创建 cpu 核心数的线程,每个线程配一个选择器,轮流处理 read 事件
服务端代码:
客户端代码:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/14821.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!