假设我有epoll实例mEPoll
,我可以安全地添加(通过EPOLL_CTL_ADD
)或删除(通过EPOLL_CTL_DEL
)套接字句柄通过
struct epoll_event event; event.data.fd = newFD; event.events = eventmask; epoll_ctl(mEPoll, EPOLL_CTL_ADD, newFD, &event);
…同时从多个线程,或者我需要添加我自己的同步原语epoll_ctl
?
编辑:
有人build议, 这个问题在这里回答我的问题。 然而,这个问题似乎集中在等待epoll_wait
调用epoll_ctl
是否安全:我已经知道这是安全的。 这个问题纯粹是问我是否可以同时对epoll_ctl
进行两个调用而不会遇到问题。