Здравствуйте, keeper-andrew, Вы писали:
KA> Открытие файла с айдишником большим 1024 это нормально (для линукса), а вот полноценная работа с ним уже невозможна.
Возможна. Только не надо применять select().
KA> Это вообще нормально? И как с этим бороться?
poll, epoll.
KA> Я уверен что приложение теоретически будет держать больше 1024 открытых файловых дескриптора: это сервер приложений, для него это нормально.
Никаких проблем. Просто не пользуйтесь legacy, или пользуйтесь там, где её адекватно поддерживают. В случае BSD систем можно переопределить FD_SETSIZE. В случае Linux этого нет, но вместо можно аллоцировать самому массивы нужного размера. Но повторюсь — лучше переходить на более современные средства.