我有多个进程在共享内存上执行IPC。当消息可用时,我使用跨进程共享EventFD来触发。听我使用Epoll的触发器,它工作正常。但是由于其他原因,我需要切换到使用libEvent2。
每当其他进程写入eventFD时,我都需要在libEvent基循环中等待并接收一个eventFD(读取)。
我尝试使用bufferevent_socket_new()和event_new()添加eventFD的FD,但是这些都不起作用。从未收到过回调。
libEvent是否应该与eventfd一起使用?有例子吗?
答案 0 :(得分:0)
使用以下标志将其与event_new()配合使用。
int flags = EV_READ | EV_WRITE | EV_ET | EV_PERSIST;
ptr = event_new(base, evfd, flags, callback, this);