Provided by: manpages-fr-dev_3.32d0.2p4-1_all bug

NOM

       close - Fermer un descripteur de fichier

SYNOPSIS

       #include <unistd.h>

       int close(int fd);

DESCRIPTION

       close() ferme le descripteur fd, de manière à ce qu'il ne référence plus aucun fichier, et
       puisse être réutilisé. Tous les verrouillages (consultez fcntl(2)) sur le fichier qui  lui
       était  associé, appartenant au processus, sont supprimés (quel que soit le descripteur qui
       fut utilisé pour obtenir le verrouillage).

       Si fd est le dernier descripteur de fichier qui se réfère à  une  description  de  fichier
       ouvert  sous-jacente  (consultez  open(2)),  les  ressources associées à la description de
       fichier ouvert sont libérées. Si le descripteur était la dernière référence sur un fichier
       supprimé avec unlink(2), le fichier est effectivement effacé.

VALEUR RENVOYÉE

       S'il  réussit, la fonction close() renvoie zéro. En cas d'erreur, il renvoie -1 et remplit
       errno avec le code d'erreur.

ERREURS

       EBADF  Le descripteur de fichier fd est invalide.

       EINTR  L'appel système close() a été interrompu par un signal ; consultez signal(7).

       EIO    Une erreur d'entrée-sortie s'est produite.

CONFORMITÉ

       SVr4, BSD 4.3, POSIX.1-2001.

NOTES

       Ne pas vérifier la valeur de retour de close() est une pratique  courante  mais  également
       une  grave erreur de programmation. Il est possible qu'une erreur correspondant à un appel
       write(2) antérieur ne soit rapportée que lors du close() final. Ne pas vérifier la  valeur
       de  retour lorsque l'on ferme un fichier peut conduire à une perte silencieuse de données.
       Ceci  est  principalement  vrai  dans  le  cas  de  systèmes  de  fichiers  NFS,  ou  avec
       l'utilisation des quotas de disques.

       Une  fermeture sans erreur ne garantit pas que les données ont été vraiment écrites sur le
       disque, car le noyau repousse les écritures le plus tard possible. Il n'est  pas  fréquent
       qu'un  système  de  fichiers  vide les tampons dès la fermeture d'un flux. Si vous désirez
       vous assurer que les informations sont en sûreté sur le disque,  utilisez  fsync(2)  (mais
       des considérations matérielles entrent en jeu à ce moment).

       Il  est  probablement imprudent de fermer des descripteurs de fichier alors qu'ils peuvent
       peut-être être utilisés par des appels système dans d'autres threads  du  même  processus.
       Puisqu'un descripteur de fichier peut être réutilisé, il y a des conditions de concurrence
       obscures qui peuvent provoquer des effets de bord non désirés.

VOIR AUSSI

       fcntl(2), fsync(2), open(2), shutdown(2), unlink(2), fclose(3)

COLOPHON

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

TRADUCTION

       Depuis   2010,   cette   traduction   est   maintenue   à   l'aide   de    l'outil    po4a
       <URL:http://po4a.alioth.debian.org/>  par  l'équipe  de  traduction francophone au sein du
       projet perkamon <URL:http://perkamon.alioth.debian.org/>.

       Christophe  Blaess  <URL:http://www.blaess.fr/christophe/>   (1996-2003),   Alain   Portal
       <URL:http://manpagesfr.free.fr/>  (2003-2006).  Julien  Cristau et l'équipe francophone de
       traduction de Debian (2006-2009).

       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> ».