_flushall
Opróżnia wszystkie strumienie; czyści wszystkie bufory.
Składnia
int _flushall( void );
Wartość zwracana
_flushall
Zwraca liczbę otwartych strumieni (dane wejściowe i wyjściowe). Nie ma zwracanego błędu.
Uwagi
Domyślnie _flushall
funkcja zapisuje w odpowiednich plikach zawartość wszystkich buforów skojarzonych z otwartymi strumieniami wyjściowymi. Wszystkie bufory skojarzone z otwartymi strumieniami wejściowymi są czyszczone z ich bieżącej zawartości. (Te bufory są zwykle utrzymywane przez system operacyjny, co określa optymalny czas automatycznego zapisywania danych na dysku: gdy bufor jest pełny, gdy strumień jest zamknięty lub gdy program kończy się normalnie bez zamykania strumieni).
Jeśli odczyt jest zgodny z wywołaniem _flushall
metody , nowe dane są odczytywane z plików wejściowych do buforów. Wszystkie strumienie pozostają otwarte po wywołaniu metody _flushall
.
Funkcja zatwierdzania na dysku biblioteki czasu wykonywania pozwala zagwarantować, że krytyczne dane są zapisywane bezpośrednio na dysku, a nie do buforów systemu operacyjnego. Bez ponownego zapisywania istniejącego programu można włączyć tę funkcję, łącząc pliki obiektów programu z commode.obj. W wynikowym pliku wykonywalnego wywołania _flushall
zapisują zawartość wszystkich buforów na dysku. Tylko _flushall
i fflush
są objęte commode.obj.
Aby uzyskać informacje na temat kontrolowania funkcji zatwierdzania na dysku, zobacz Stream We/Wy, fopen
i _fdopen
.
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Wymagania
Function | Wymagany nagłówek |
---|---|
_flushall |
<stdio.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Przykład
// crt_flushall.c
// This program uses _flushall
// to flush all open buffers.
#include <stdio.h>
int main( void )
{
int numflushed;
numflushed = _flushall();
printf( "There were %d streams flushed\n", numflushed );
}
There were 3 streams flushed
Zobacz też
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla