Nikolay
Но это ведь треад блокируется и будет разбужен он как только произойдет одно из событий , которое ждём. Сам cpu ведь производства этом свободен. Будет допустим много тредов , каждый из который слушает события на своей тысячи сокетов через epoll_wait. Предел например в количестве таких активных именно соединений в секунду . Сколько запросов на обработку можно в секунду для того подхода обеспечить.
>В какое ограничение физически оно упрется
"Он", раз речь идёт о сервере, а не о приложении?
>Будет допустим много тредов , каждый из который слушает события на своей тысячи сокетов через epoll_wait.
Плодить на каждую тысячу сокетов по треду OS вряд ли имеет смысл
Рациональнее один тред с accept'ом, который ждёт подключения, далее перекидывает это вновь созданное соединение через round robin в другой epoll instance на другом треде, где и обрабатывается реакция на события. И суммарное число тредов вряд ли имеет смысл создавать больше чем число ядер(+1)
Для такой простой логики, как "раз в 3 секунды отдать что-то из памяти" такой подход может позволить обрабатывать десятки или сотни тысяч соединений