C++ & Epoll #
代码可见这里
也没啥高级就是:
- create_socket
- epoll_create1
- epoll_ctl(1. & 2.)
- struct epoll_event events[MAX_EPOLL_EVENTS] = {0};
- while1: epoll_wait(2, & 4.)
- eventfd == sockfd accept
- else => connfd read
所以就是:
- epoll_event -> 内核空间
- epitem -> 红黑
- 设备事件就绪 - callback (epitem -> rdlist链表)
- emmmm…有需要再继续整理吧
和select
-poll
区别为: 一个遍历, 一个触发式的.