Multithreading 在tcp套接字上生成EPOLLRDHUP事件
如何通过编程方式使用另一个线程在tcp套接字上触发ePollHup事件 我已经用EPOLLRDHUP事件添加了epoll实例,并试图生成该事件,但它修改了该FD上的事件,而不是触发它Multithreading 在tcp套接字上生成EPOLLRDHUP事件,multithreading,sockets,tcp,epoll,Multithreading,Sockets,Tcp,Epoll,如何通过编程方式使用另一个线程在tcp套接字上触发ePollHup事件 我已经用EPOLLRDHUP事件添加了epoll实例,并试图生成该事件,但它修改了该FD上的事件,而不是触发它 我希望我的第一个线程使用epoll_wait()持续等待事件,应该从EPOLLRDHUP接收事件,一旦另一个线程触发它,我无法获得如何触发该事件,我尝试在另一个线程中使用write系统调用,但我猜这也不会触发套接字FD上的事件,轮询应该来自阻塞循环是我的要求,请帮助,谢谢。您不能从另一个线程在同一文件描述符上生成e
我希望我的第一个线程使用epoll_wait()持续等待事件,应该从EPOLLRDHUP接收事件,一旦另一个线程触发它,我无法获得如何触发该事件,我尝试在另一个线程中使用write系统调用,但我猜这也不会触发套接字FD上的事件,轮询应该来自阻塞循环是我的要求,请帮助,谢谢。您不能从另一个线程在同一文件描述符上生成epoll事件,EPOLLRDHUP将基于TCP连接另一端发生的事件生成 如果有一个线程正在等待
epoll\u wait()
,并且希望从另一个线程唤醒该线程,那么除了任何TCP套接字之外,还应该在管道的读取端创建一个(),让epoll\u wait等待读取事件。当你想唤醒你的线程时,你需要在管道的写入端写入一个字节
(也可以使用an代替管道来实现同样的效果)