Compartir a través de


_setmaxstdio

Establece el número de archivos que se permite abrir simultáneamente en el nivel de flujo de E/S.

Sintaxis

int _setmaxstdio(
   int new_max
);

Parámetros

new_max
Nuevo número de archivos que se permite abrir simultáneamente en el nivel de flujo de E/S.

Valor devuelto

Devuelve new_max si se ejecuta correctamente; en caso contrario, -1.

Si new_max es menor que _IOB_ENTRIES, o mayor que el número máximo de identificadores disponibles en el sistema operativo, se invoca el controlador de parámetros no válidos, como se describe en Validación de parámetros. Si la ejecución puede continuar, esta función devuelve -1 y establece errno en EINVAL.

Para información sobre estos y otros códigos de error, consulte errno, _doserrno_sys_errlist y _sys_nerr.

Comentarios

La función _setmaxstdio cambia el valor máximo del número de archivos que pueden estar abiertos simultáneamente en el nivel de E/S de flujo.

La E/S de tiempo de ejecución de C ahora admite hasta 8192 archivos abiertos simultáneamente en el nivel de flujo de E/S inferior. Este nivel incluye los archivos abiertos y aquellos a los que se ha accedido mediante la familia de funciones de E/S _open, _read y _write. De forma predeterminada, se pueden abrir hasta 512 archivos al mismo tiempo en el nivel de flujo de E/S. Este nivel incluye los archivos abiertos y aquellos a los que se ha accedido mediante la familia de funciones fopen, fgetc y fputc. El límite de 512 archivos abiertos en el nivel de E/S de flujo se puede aumentar hasta un máximo de 8192 mediante la función _setmaxstdio.

Dado que las funciones de nivel de E/S de flujo, como fopen se crean a partir de las funciones de nivel de E/S de flujo bajo, el máximo de 8192 archivos es un límite superior fuerte para el número de archivos abiertos simultáneamente a los que se accede mediante la biblioteca en tiempo de ejecución de C.

Nota:

Este límite superior puede exceder los valores que admiten ciertas plataformas y configuraciones de Win32.

Requisitos

Routine Encabezado necesario
_setmaxstdio <stdio.h>

Para obtener más información sobre compatibilidad, consulte Compatibilidad.

Ejemplo

Vea _getmaxstdio para obtener un ejemplo en el que se usa _setmaxstdio.

Consulte también

E/S de secuencia