epoll中有两个函数:
- epoll_ctl
- epoll_wait
当我使用相同的 epoll_fd 时,它们是否线程安全?
如果一个线程调用epoll_wait而其他线程同时调用epoll_ctl会怎样?
最佳答案
它是线程安全的,但没有太多文档明确说明这一点。参见 here
顺便说一句,您也可以让多个线程等待单个 epoll_fd
,但在那种情况下它可能会变得有点棘手。 (即,您可能想使用边缘触发的 EPOLLET
或单触发模式 EPOLLONESHOT
。参见 here。)
关于c - epoll 是线程安全的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7058737/