Как по-человечиски узнать остаточное кол-во свободных дескрипторов?
Следующий вариант работает, но кажется мне всё-таки не кошерным:
---8<---
#define MAXFD 1024
int
maxfd(void)
{
int i, ret;
FILE *fd[MAXFD];
for (i = 0; (fd[i] = fopen("/dev/null", "r")) != NULL && i < MAXFD; i++)
;
ret = i;
while (i--)
fclose(fd[i]);
return ret;
}
---8<---
getrlimit возвращяет же сверического коня в вакууме, т.к. часть
дескрипторов уже занята (stdin/stdout/хзчто) и как определить
сколько ещё реально доступно не понятно.
Идеи?
Ответ на:
комментарий
от MKuznetsov

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум pthread_cond_timedwait (2005)
- Форум [C][FIFO] Чатик, не ходят данные (2011)
- Форум charshunt как с ним работать (2008)
- Форум tcc gnu getline в рот мне ноги (2013)
- Форум Как узнать, сколько памяти доступно для выделения? (2005)
- Форум Трабл с модулем (2005)
- Форум getaddrinfo выдает нулевые адреса 0.0.0.0 (2022)
- Форум помогите немогу понять куда девается stdout (2009)
- Форум Си /*ошибка сегментирования */ (2009)
- Форум Простой вопрос насчёт списков для профессионалов . (2014)