![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
io
coding快乐
技术渣渣,需要多学习才能进步。
展开
-
epoll学习笔记1
简介epoll是同poll相似的,用于同时监听多个fd上的相关I/O事件。epoll相较于poll而言有边缘触发和水平触发两种事件触发模式,poll只有水平触发一种事件触发模式。事件触发模式介绍水平触发水平触发(Level-Triggered)是当被监控的fd上有可读写事件发生时,epoll_wait会通知程序去读写。如果程序在这次操作没有将数据全部读写完(可能由于缓冲区不够),那么下次调用epoll_wait时仍然会通知程序去读写,直到数据被读写完为止。优点: 开发时每次读写操作只需要读写想要的原创 2020-11-11 19:11:37 · 800 阅读 · 0 评论 -
poll和ppoll学习笔记
简介poll/ppoll其实是同select/pselect类似的,用于同步多路I/O复用。poll/ppoll同select/pselect的最大区别在于poll/ppoll没有最大连接数限制,因为poll/ppoll使用的用于存储fd的集合是根据实际fd的数量动态分配的。此外,poll/ppoll监听的事件类型更加的丰富/细致些。相关结构体定义struct pollfd/* Data structure describing a polling request. */struct pollf原创 2020-11-10 17:45:55 · 1739 阅读 · 0 评论 -
libevent学习笔记1,简介
简介libevent是一个事件驱动型的跨平台的网络通信基础库。libevent支持包括:/dev/poll、kqueue(2)、select(2)、poll(2)、epoll(4)、evports等在内的多种异步通信模型。同时,支持在Linux、 *BSD、Mac OS X、Solaris、Windows等多种类型的操作系统上编译使用。libevent遵循BSD开源协议。源码结构介绍版本libevent-release-2.1.7-rc代码目录结构xxxx$ tree.├── CMakeLi原创 2020-10-30 15:55:57 · 12388 阅读 · 2 评论