Добрый день, ЛОР. Вопрос нубский. Но, для меня, пока неясен.
Что имеем: main() и 4 потока (threads) Потоки опрашивают из своих fd и передают в свои fd данные. Здесь используем epoll(). Тут понятно.
Данные от потоков и в потоки передаются в main() через глобальные переменные.Для факта наличия новых данных используются флаги. И все это в while(1). Вот этот момент и не нравится.
Ткните носом, как это правильно можно реализовать? Можно ли использовать epoll() в main() (получается создав fd между потоками и main?)? Граммотно ли это?