码迷,mamicode.com
首页 > 其他好文 > 详细

epool EPOLLLT模式和EPOLLET模式

时间:2017-09-21 20:59:39      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:bsp   添加   out   tail   pool   lin   article   事件   方式   

EPOLLLT是系统默认模式,如果监听的socket链接,只要socket缓存有数据,就触发EPOLLIN,同样只要发送缓存有空间,都会有持续不间断的EPOLLOUT通知。

EPOLLET 在接收数据时, 如果有数据只会通知一次, 假如read时未读完数据,那么不会再有EPOLLIN的通知了, 直到下次有新的数据到达时为止; 当发送数据时, 如果发送缓存未满也只有一次EPOLLOUT的通知, 除非你把发送缓存塞满了, 才会有第二次EPOLLOUT通知的机会, 所以在此方式下read和write时都要处理好。

PS:如果将一个socket描述符添加到两个epoll中, 那么即使在EPOLLET模式下, 只要前一个epoll_wait时,未读完, 那么后一个epoll_wait事件时, 也会得到读的通知, 但前一个读完的情况下, 后一个epoll就不会得到读事件的通知。

http://blog.csdn.net/lrh406317290/article/details/8755126

epool EPOLLLT模式和EPOLLET模式

标签:bsp   添加   out   tail   pool   lin   article   事件   方式   

原文地址:http://www.cnblogs.com/lovedesy123/p/7570151.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!