Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/142.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ libev,为什么要录制一个事件';evloop中的数字是3?_C++_C_Linux_Networking_Libev - Fatal编程技术网

C++ libev,为什么要录制一个事件';evloop中的数字是3?

C++ libev,为什么要录制一个事件';evloop中的数字是3?,c++,c,linux,networking,libev,C++,C,Linux,Networking,Libev,在libev源代码“ev.h”中,我没有找到定义数字0x03的宏 void callback(struct ev_loop *loop, ev_io *w, int events) { if (EV_READ == events) { ... } else if (EV_WRITE == events) { ... } else { here recv event's number is 3 } } 这有点像面

在libev源代码“ev.h”中,我没有找到定义数字0x03的宏

void callback(struct ev_loop *loop, ev_io *w, int events)
{
    if (EV_READ == events) {
      ...
    }
    else if (EV_WRITE == events) {
      ...
    }
    else {
      here recv event's number is 3
    }
}

这有点像面具。3表示可读写条件均可处理

试试像这样的东西

EV_READ     =            0x01, /* ev_io detected read will not block */
EV_WRITE    =            0x02, /* ev_io detected write will not block */

感谢您的帮助,我的代码在recv事件编号为3时运行成功,应该使用并替换|?太好了!你是对的,应该是&。。。修好了,谢谢。谢谢你的帮助
if (events & EV_READ) {  // something is readable
  ...
}
if (events & EV_WRITE) { // something is writable
  ...
}