SEM_DESTROY(3)

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

SYNOPSIS
#include <semaphore.h>

int sem_destroy(sem_t *sem);

Utilisez -lrt ou -pthread à l'édition de liens.

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. Si elle échoue, elle renvoie -1 et écrit errno en conséquence.

ERREURS

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

CONFORMITÉ
POSIX.1-2001.

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)

TRADUCTION

Ce document est une traduction réalisée par Alain Portal <aportal AT univ-montp2 DOT fr> le 29 juillet 2006 et révisée le 17 juillet 2008.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 sem_destroy ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.