情况:python3.7,epoll TCP。对端有发送数据,为啥不会触发 select.EPOLLIN ?
然后我打印了下 epoll.poll(),fd 是没错,socket 都对得上。可是为啥 events 就对不上呢?
发现对端发数据,events 是 5,而不是 EPOLLIN 的 4,而我把 python3.7 文档全看了一遍,都没找到 5 是对应那个宏的。
有大佬遇到过吗,是怎么解决的
epoll 事件如下:(这是根据官方文档打印的)
EPOLLIN:1(int)
EPOLLOUT:4
EPOLLPRI:2
EPOLLERR:8
EPOLLHUP:16
EPOLLET:2147483648
EPOLLONESHOT:1073741824
EPOLLEXCLUSIVE:268435456
EPOLLRDHUP:8192
EPOLLRDNORM:64
EPOLLRDBAND:128
EPOLLWRNORM:256
EPOLLWRBAND:512
EPOLLMSG:1024
然后我打印了下 epoll.poll(),fd 是没错,socket 都对得上。可是为啥 events 就对不上呢?
发现对端发数据,events 是 5,而不是 EPOLLIN 的 4,而我把 python3.7 文档全看了一遍,都没找到 5 是对应那个宏的。
有大佬遇到过吗,是怎么解决的
epoll 事件如下:(这是根据官方文档打印的)
EPOLLIN:1(int)
EPOLLOUT:4
EPOLLPRI:2
EPOLLERR:8
EPOLLHUP:16
EPOLLET:2147483648
EPOLLONESHOT:1073741824
EPOLLEXCLUSIVE:268435456
EPOLLRDHUP:8192
EPOLLRDNORM:64
EPOLLRDBAND:128
EPOLLWRNORM:256
EPOLLWRBAND:512
EPOLLMSG:1024