我有几个线程,其中一个在循环中调用epoll_wait
,其他线程可以打开第一个线程需要epoll
的连接。是否可以添加epoll_ctl
的新套接字,而另一个线程在epoll_wait
中等待?
以下情况会发生什么:
epoll_wait会返回套接字A吗?
答案 0 :(得分:4)
是的,它会的。 epoll
套接字的重点在于您不必重复工作。不涉及快照或使用多个等待队列。
引擎盖下,epoll套接字有自己的等待队列。当您阻止epoll套接字时,您将被添加到该单个等待队列。没有任何国家被保存或类似的东西。状态在epoll套接字本身。