Может ли EventFD использоваться с libEvent2? - PullRequest
0 голосов
/ 09 января 2019

У меня есть несколько процессов, выполняющих IPC через общую память. Я использую общий процесс EventFD для запуска, когда сообщение доступно. Для прослушивания триггера я использовал Epoll, и он отлично работает. Но мне нужно перейти на использование libEvent2 по другим причинам.

Мне нужно подождать в базовом цикле libEvent и получать eventFD (чтение) всякий раз, когда другой процесс записывает в eventFD.

Я попытался добавить FD для eventFD, используя bufferevent_socket_new () и event_new (), но ни одна из этих работ не работала. Никакого обратного вызова не получено.

Должно ли libEvent работать с eventfd? Есть ли примеры?

1 Ответ

0 голосов
/ 12 января 2019

Получил это для работы с event_new (), используя следующий набор флагов.

int flags = EV_READ | EV_WRITE | EV_ET | EV_PERSIST;
ptr = event_new(base, evfd, flags, callback, this);
...