_setmaxstdio
Задает максимальное число одновременно открытых файлов на уровне stdio.
int _setmaxstdio(
int newmax
);
Параметры
- newmax
Новое максимальное число одновременно открытых файлов на уровне stdio.
Возвращаемое значение
Возвращает значение newmax в случае успешного выполнения; в противном случае — значение –1.
Если newmax меньше, чем _IOB_ENTRIES или больше, чем максимальное количество дескрипторов, доступных в операционной системе, вызывается обработчик недопустимого параметра, как описано в разделе Проверка параметров. Если выполнение может быть продолжено, функция возвращает -1 и устанавливает errno в EINVAL.
Дополнительные сведения об этих и других кодах ошибок см. в разделе _doserrno, errno, _sys_errlist и _sys_nerr.
Заметки
Функция _setmaxstdio изменяет максимальное число файлов, которые могут быть одновременно открыты на уровне stdio.
Ввод-вывод среды выполнения C теперь поддерживает гораздо больше открытых файлов на платформах Win32, чем в предыдущих версиях. До 2048 файлов могут быть открыты одновременно на уровне lowio (то есть, открыты и доступны посредством _open, _read, _write и т.п. из семейства функций ввода-вывода). До 512 файлов могут быть открыты одновременно на уровне stdio (то есть, открыты и доступны посредством fopen, fgetc, fputc и т.п. из семейства функций ввода-вывода). Ограничение открытия 512 файлов на уровне stdio можно увеличить до 2048 с помощью функции _setmaxstdio.
Поскольку функции уровня stdio, например, fopen, строятся поверх функций lowio, максимум в 2048 файлов является жестким верхним пределом для числа одновременно открытых файлов, полученных через библиотеку времени выполнения C.
Примечание
Этот верхний предел может оказаться выше того, что поддерживается конкретной платформой и конфигурацией Win32.
Требования
Подпрограмма |
Обязательный заголовок |
---|---|
_setmaxstdio |
<stdio.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость во введении.
Пример
Пример использования _setmaxstdio см. в _getmaxstdio.
Эквивалент в .NET Framework
Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.