![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络编程
文章平均质量分 88
梦想会走路
知易行难,静水流深
展开
-
epoll 和select的对比
今天看公司代码时,发现代码里面使用的事清一色的代码使用epoll, 所以就得说一说了;宏观看一看epoll 和select的实现: select原理概述 调用select时,会发生以下事情: 从用户空间拷贝fd_set到内核空间; 注册回调函数__pollwait; 遍历所有fd,对全部指定设备做一次poll(这里的poll是一个文件操作,它有两个参数,一个是文件fd本身,一个是当设备尚未就绪时调用的回调函数__pollwait,这个函数把设备自己特有的等待队列传给内核,让...转载 2021-03-04 19:04:20 · 583 阅读 · 1 评论 -
高并发网络编程之epoll详解
高并发网络编程之epoll详解 在linux 没有实现epoll事件驱动机制之前,我们一般选择用select或者poll等IO多路复用的方法来实现并发服务程序。在大数据、高并发、集群等一些名词唱得火热之年代,select和poll的用武之地越来越有限,风头已经被epoll占尽。 本文便来介绍epoll的实现机制,并附带讲解一下select和poll。通过对比其不同的实现机制,真正理解为何epoll能实现高并发。 select()和poll() IO多路复用模型 select的缺点: 单个进程.转载 2021-02-26 16:21:11 · 165 阅读 · 0 评论