我是使用epoll进行linux服务器编程的新手。 我有2个线程:Thread_Accept和Thread_epoll。前者是块接受循环,如果新连接即将到来,它将使用epoll_ctl()添加新的fd。后者是一个大的epoll_wait()循环。在一个线程中执行epoll_ctl,而另一个线程处于epoll_wait中间
现在我的问题是:如果当Thread_Acepts执行epoll_ctl()而Thread_epoll处于epoll_wait中间时呢?会有副作用吗?
在此先感谢。
问候, 马丁
伊万,我知道了。但不是它分裂为两个线程会获得更好的表现吗?只是我的想法。 –
关于获得更好的表现,我不确定。在这种情况下,您需要通过锁定来保护每个epoll_ctl。恕我直言,它只会增加您的代码的复杂性 –