epoll水平触发和边缘触发的区别?
1 个回答
重新审视自己,什么使你快乐,什么就是眼下最珍贵。东方朔水平触发和边缘触发两种: 1. LT,默认的模式(水平触发) 只要该fd还有数据可读,每次 epoll_wait 都会返回它的事件,提醒用户程序去操作, 2. ET是“高速”模式(边缘触发)只会提示一次,直到下次再有数据流入之前都不会再提示,无论fd中是否还有数据可读。所以在ET模式下,read一个fd的时候一定要把它的buffer读完,即读到read返回值小于请求值或遇到EAGAIN错误 epoll使用“事件”的就绪通知方式,通过epoll_ctl注册fd,一旦该fd就绪,内核就会采用类似回调机制激活该fd,epoll_wait便可收到通知。发布于 2022-02-09 07:01 •IP属地 湖北举报评论收藏
公众号进入网站体验更佳

