_setmaxstdio
Legt eine maximale Anzahl für die Dateien fest, die auf der E/A-Ebene des Streams gleichzeitig geöffnet sein können.
Syntax
int _setmaxstdio(
int new_max
);
Parameter
new_max
Neue maximale Anzahl für die Dateien, die auf der E/A-Ebene des Streams gleichzeitig geöffnet sein können.
Rückgabewert
Gibt bei erfolgreicher Ausführung zurück new_max
; andernfalls -1.
Wenn new_max
weniger als _IOB_ENTRIES
oder größer als die maximale Anzahl der im Betriebssystem verfügbaren Handles ist, wird der ungültige Parameterhandler aufgerufen, wie in der Parameterüberprüfung beschrieben. Wenn die Ausführung weiterhin zugelassen wird, gibt diese Funktion -1 zurück und legt errno
auf EINVAL
fest.
Informationen zu diesen und anderen Fehlercodes finden Sie unter , , _doserrno
, _sys_errlist
und _sys_nerr
.errno
Hinweise
Die _setmaxstdio
Funktion ändert den Maximalwert für die Anzahl der Dateien, die gleichzeitig auf Datenstrom-E/A-Ebene geöffnet werden können.
C-Laufzeit-E/A unterstützt nun bis zu 8.192 gleichzeitig geöffnete Dateien auf niedriger E/A-Ebene. Diese Ebene umfasst Dateien, die mit den _open
Funktionen ", _read
" und _write
"Familie von E/A" geöffnet und darauf zugegriffen werden. Standardmäßig können auf der Stream-I/O-Ebene bis zu 512 Dateien gleichzeitig geöffnet sein. Diese Ebene umfasst Dateien, die mit den fopen
Funktionen , fgetc
und fputc
der Familie der Funktionen geöffnet und darauf zugegriffen werden. Der Grenzwert von 512 geöffneten Dateien auf Der Datenstrom-E/A-Ebene kann durch Die Verwendung der _setmaxstdio
Funktion auf maximal 8.192 erhöht werden.
Da Datenstrom-E/A-Ebenenfunktionen wie fopen
z. B. auf den Funktionen auf niedriger E/A-Ebene basieren, ist die maximale Anzahl von 8.192 eine harte Obergrenze für die Anzahl gleichzeitig geöffneter Dateien, auf die über die C-Laufzeitbibliothek zugegriffen wird.
Hinweis
Diese Obergrenze kann über die von einer bestimmten Win32-Plattform und -Konfiguration unterstützten Werte hinausgehen.
Anforderungen
Routine | Erforderlicher Header |
---|---|
_setmaxstdio |
<stdio.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
Unter _getmaxstdio
finden Sie ein Beispiel für die Verwendung von _setmaxstdio
.