Provided by: manpages-fr-dev_4.15.0-9_all bug

NOM

       sem_destroy - Détruire un sémaphore non nommé

SYNOPSIS

       #include <semaphore.h>

       int sem_destroy(sem_t *sem);

       Effectuez l'édition des liens avec l'option -pthread.

DESCRIPTION

       sem_destroy() détruit le sémaphore non nommé situé à l'adresse pointée par sem.

       Seul un sémaphore initialisé avec sem_init(3) peut être détruit avec sem_destroy().

       La  destruction  d'un  sémaphore  sur  lequel  des processus ou threads sont bloqués (dans
       sem_wait(3)) produira un comportement indéfini.

       L'utilisation d'un sémaphore détruit produira des résultats indéfinis jusqu'à  ce  que  le
       sémaphore soit réinitialisé avec sem_init(3).

VALEUR RENVOYÉE

       sem_destroy()  renvoie  0  s'il  réussit.  S'il  échoue,  il  renvoie -1 et écrit errno en
       conséquence.

ERREURS

       EINVAL sem n'est pas un sémaphore valable.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).

       ┌────────────────────────────────────────────────────────┬──────────────────────┬─────────┐
       │InterfaceAttributValeur  │
       ├────────────────────────────────────────────────────────┼──────────────────────┼─────────┤
       │sem_destroy()                                           │ Sécurité des threads │ MT-Safe │
       └────────────────────────────────────────────────────────┴──────────────────────┴─────────┘

CONFORMITÉ

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

NOTES

       Un sémaphore non nommé devrait être détruit avec sem_destroy() avant que la  mémoire  dans
       laquelle  il  est  situé  ne  soit  libérée.  Ne pas le faire peut provoquer des fuites de
       ressource sur certaines implémentations.

VOIR AUSSI

       sem_init(3), sem_post(3), sem_wait(3), sem_overview(7)

COLOPHON

       Cette page fait partie de la publication 5.13 du projet man-pages Linux.  Une  description
       du  projet et des instructions pour signaler des anomalies et la dernière version de cette
       page peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION

       La traduction française de cette  page  de  manuel  a  été  créée  par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,  Stéphan  Rafin  <stephan.rafin@laposte.net>, Thierry
       Vignaud <tvignaud@mandriva.com>, François Micaux, Alain  Portal  <aportal@univ-montp2.fr>,
       Jean-Philippe    Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-
       luc.coulon@wanadoo.fr>,   Julien    Cristau    <jcristau@debian.org>,    Thomas    Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>,  Denis
       Barbier   <barbier@debian.org>,   David   Prévot  <david@tilapin.org>  et  Thomas  Vincent
       <tvincent@debian.org>

       Cette traduction est une documentation libre ; veuillez vous reporter  à  la  GNU  General
       Public   License   version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  concernant  les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à ⟨debian-l10n-french@lists.debian.org⟩.