Как bluez использует epoll_create1 в двух разных процессах? - PullRequest
0 голосов
/ 28 сентября 2018

Я использую bluez mainloop_init (который внутренне использует epoll_create1) и mainloop_run (который внутренне использует epoll_wait) в трех разных процессах, скажем, N1, N2 и N3.Когда я пытаюсь подключиться от N1 к N3 (это означает, что N3 будет получать и событие EPOLLIN), он иногда принимается N2, а иногда и N1.Я попытался напечатать epoll_fd для всех трех процессов, и все они одинаковы (конечно, они будут из другой таблицы процессов).Но если они из другой таблицы процессов, почему событие для N3 переходит в N2?Это какая-то специфическая для bluez обработка на уровне ядра или что-то еще, чего мне не хватает?

...