【问题标题】:Does `epoll_wait` signify which event was triggered when both EPOLLIN and EPOLLOUT were added?`epoll_wait` 是否表示在添加 EPOLLIN 和 EPOLLOUT 时触发了哪个事件?
【发布时间】:2011-01-27 13:37:04
【问题描述】:

假设我在使用epoll_wait 添加要监视的描述符时同时指定EPOLLINEPOLLOUT 标志。从“epoll”手册页中,不清楚作为数组一部分返回的每个epoll_event 结构在其events 字段中究竟携带什么。引用:

events 成员将包含返回的事件位字段。

这是否意味着无法区分是否触发了表示“可写”和“可读”的事件?基本上有一个事件掩码,从逻辑上讲,我希望返回的数组能够准确地表示 what 事件在文件描述符上“发生”了?

【问题讨论】:

    标签: linux epoll


    【解决方案1】:

    您的期望是正确的。 events 成员将包含该文件描述符发生的事件。

    【讨论】:

    • events 是否可以同时包含EPOLLINEPOLLOUT 掩码?
    • @compile-fan:是的。考虑在文件描述符在轮询时已经可读和可写的情况下进行级别触发。
    猜你喜欢
    • 1970-01-01
    • 2014-09-29
    • 2013-08-12
    • 2012-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-16
    相关资源
    最近更新 更多