Сколько раз epoll_wait () будет уведомлять процесс, когда N сокетов соединены с прослушивающим сокетом? - PullRequest
0 голосов
/ 18 июня 2011

В случае успеха epoll_wait (2) возвращает количество файловых дескрипторов готово для запрошенного ввода-вывода или ноль, если нет дескриптор файла стал готов во время запрошенное время ожидания в миллисекундах. Когда возникает ошибка, epoll_wait (2) возвращает -1 и errno установлен соответственно.

Предположим, что epoll запущен по ET, epoll_wait уведомит процесс N раз для N подключенных сокетов или только один раз?

Ответы [ 2 ]

0 голосов
/ 20 июля 2011

Предположим, что epoll запущен ET, будет ли epoll_wait уведомлять процесс N раз для N подключенных сокетов или> только один раз?

Вы получите одно уведомление на сокет, в котором есть запрашиваемое событие ввода-вывода. Конечно, epoll_wait может доставить более одного уведомления за вызов.

0 голосов
/ 21 июня 2011

Если N клиентов подключаются одновременно, и вы принимаете их все, дальнейшие уведомления будут происходить .. Если N клиентов подключатся и вы примете N-1, никаких уведомлений не будет, пока вы не используете все события.

...