Может кто сталкивался с подобной проблеммой:
Открываю несколько сокетов, получаю их дескрипторы потом передаю
их select, чтобы тот ждал когда в них можно будет писать/читать.
select мне возвращает, что скажем 4 дескриптор доступен и для
чтения и для записи, при попытке прочитать данные, read крепко
задумывается, типа данных нет. Пробовал повторно передавать
этот же дескриптора select-у, он уже не выдает его как
доступный для чтения.
Схематично ситуация выглядит следующим образаом
1) Открываем сокеты -> [3,4,5,6]
2) Первый вызов select
select [3,4,5,6] [3,4,5] [] -> [4] [4] []
3) Второй вызов select
select [4] [4] [] -> [] [4] []
Что за чепуха такая, в чем может быть дело?