fflush(3) Library Functions Manual fflush(3)

fflush - golește un flux

Biblioteca C standard (libc, -lc)

#include <stdio.h>
int fflush(FILE *_Nullable stream);

Pentru fluxurile de ieșire, fflush() forțează scrierea tuturor datelor din memoria tampon din spațiul utilizatorului pentru ieșirea dată sau actualizează stream prin intermediul funcției de scriere de bază a fluxului.

Pentru fluxurile de intrare asociate cu fișiere care pot fi căutate (de exemplu, fișiere pe disc, dar nu conducte sau terminale), fflush() elimină toate datele stocate în memoria tampon care au fost preluate din fișierul de bază, dar care nu au fost consumate de aplicație.

Starea deschisă a fluxului nu este afectată.

Dacă argumentul stream este NULL, fflush() golește toate fluxurile de ieșire deschise.

Pentru varianta corespondentă fără blocare, a se vedea unlocked_stdio(3).

La finalizarea cu succes, se returnează 0. În caz contrar, se returnează EOF (sfârșit de fișier), iar errno este configurată pentru a indica eroarea.

stream nu este un flux deschis sau nu este deschis pentru scriere.

Funcția fflush() poate, de asemenea, să eșueze și să configureze errno pentru oricare dintre erorile specificate pentru write(2).

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
fflush() Siguranța firelor MT-Safe

C11, POSIX.1-2008.

C89, POSIX.1-2001, POSIX.1-2008.

POSIX.1-2001 nu a specificat comportamentul pentru golirea fluxurilor de intrare, dar acest comportament este specificat în POSIX.1-2008.

Rețineți că fflush() golește numai memoriile tampon din spațiul utilizatorului furnizate de biblioteca C. Pentru a se asigura că datele sunt stocate fizic pe disc, memoriile tampon ale nucleului trebuie să fie și ele golite, de exemplu, cu sync(2) sau fsync(2).

fsync(2), sync(2), write(2), fclose(3), fileno(3), fopen(3), fpurge(3), setbuf(3), unlocked_stdio(3)

Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

2 mai 2024 Pagini de manual de Linux 6.8