Loading

NOM

       fflush - Vider les tampons d’un flux

SYNOPSIS

       #include <stdio.h>

       int fflush(FILE *stream);

       Pour  les  flux  de  sortie,  fflush()  force  l’écriture de toutes les
       données se trouvant dans les tampons de l’espace utilisateur, et met  à
       jour  le flux stream à travers la fonction sous-jacent d’écriture. Pour
       les flux d’entrée, fflush() ne traite pas tout  donnée  en  tampon  qui
       aurait  été  lue depuis le fichier sous-jacent mais qui ne l’aurait pas
       été par l’application. Le statut d’ouverture du flux n’est pas affecté.

       Si  l’argument  stream est NULL, fflush() vide tous les flux ouverts en
       sortie.

       Pour une version de cette fonction  ignorant  les  verrouillages,  voir
       unlocked_stdio(3).

VALEUR RENVOYÉE

       Si  elle  réussit  intégralement, cette fonction renvoie 0. Sinon, elle
       renvoie EOF, et la variable errno contient le code d’erreur.

ERREURS

       EBADF  stream n’est pas ouvert, ou du moins pas en écriture.

       La  fonction  fflush()  peut  aussi  échouer,  et  définir  dans  errno
       n’importe quelles erreurs spécifiées par la routine write(2).

CONFORMITÉ

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

       Les  standards  ne spécifie pas le comportement pour les flux d’entrée.
       la plupart des autres implémentations  ont  le  même  comportement  que
       l’implémentation Linux.

NOTES

       Remarquez  que  fflush()  ne  vide  que  les  tampons  fournis  par  la
       bibliothèque C  dans  l’espace  utilisateur.  Pour  s’assurer  que  les
       données  sont  écrites  physiquement sur le disque, il faut aussi vider
       les tampons du noyau à l’aide par exemple de sync(2) ou fsync(2).

VOIR AUSSI

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

COLOPHON

       Cette  page  fait  partie  de  la  publication 3.23 du projet man-pages
       Linux. Une description du projet et des instructions pour signaler  des
       anomalies       peuvent       être       trouvées      à      l’adresse
       http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Cette page de manuel a été traduite  et  mise  à  jour  par  Christophe
       Blaess  <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
       Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et  mise  à
       disposition sur http://manpagesfr.free.fr/.

       Les mises à jour et corrections de la version présente dans Debian sont
       directement gérées par Florentin Duneau <fduneau@gmail.com> et l’équipe
       francophone de traduction de Debian.

       Veuillez   signaler   toute   erreur   de   traduction  en  écrivant  à
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous  pouvez  toujours avoir accès à la version anglaise de ce document
       en utilisant la commande « man -L C <section> <page_de_man> ».