
epoll事件处理
xiaofei_chain
手游方案提供者
展开
-
epoll 事件处理的细节分析2
准确的说epoll事件就是IO事件,包括文件、socket、pipe等,linux把他们统称为文件,统一的接口调用,驱动层不同实现。这里分成四类:监听套餐接字,链接套接字,文件,pipe,相应的触发条件1.监听套接字:有新链接连上临听套接字,并三次握手成功时2.链接套接字有IO读写,且传输层接收/发送完毕3.普通文件有IO读写4.pipe有IO读写,且有锁保原创 2013-03-13 12:13:42 · 2594 阅读 · 1 评论 -
epoll 事件处理的技术内核分析
epoll高效机制其实就是内核回调,我们知道linux把socket也是当成file处理的,只是底层驱动不一样。先来看看内核文件结构:struct file_operations { struct module *owner; loff_t (*llseek) (struct file *, loff_t, int); ssize_t (*re原创 2013-03-13 11:00:06 · 2637 阅读 · 0 评论 -
epoll 事件处理的细节分析
先来纠正一下观念。epoll 是区分读写事件,这主要取决于底层驱动的支付。如:struct epoll_event ee;ee.events= EPOLLIN | EPOLLOUT;epoll_ctl( epfd, EPOLL_CTL_MOD, fd, &ee );等来事件可读的时候epoll_wait 返回的 ee.events 就会是 EPOLLIN可写原创 2013-03-13 11:23:21 · 2085 阅读 · 0 评论