pthread_mutexattr_destroy ou pthread_mutexattr_init Sous-routine

Objectif

Initialise et détruit les attributs mutex.

Bibliothèque

Bibliothèque d'unités d'exécution (libpthreads.a)

Syntaxe

#include <pthread.h>

int pthread_mutexattr_init (attr)
pthread_mutexattr_t *attr;

int pthread_mutexattr_destroy (attr)
pthread_mutexattr_t *attr;

Descriptif

La fonction pthread_mutexattr_init initialise un objet d'attributs de mutex attr avec la valeur par défaut pour tous les attributs définis par l'implémentation.

L'effet de l'initialisation d'un objet d'attributs mutex déjà initialisé n'est pas défini.

Une fois qu'un objet d'attributs d'exclusion mutuelle a été utilisé pour initialiser une ou plusieurs exclusions mutuelles, toute fonction affectant l'objet d'attributs (y compris la destruction) n'affecte pas les exclusions mutuelles précédemment initialisées.

La fonction pthread_mutexattr_destroy détruit un objet d'attributs de mutex ; l'objet devient, en fait, non initialisé. Une implémentation peut amener pthread_mutexattr_destroy à définir l'objet référencé par attr sur une valeur non valide. Un objet d'attributs de mutex détruit peut être réinitialisé à l'aide de pthread_mutexattr_init; les résultats du référencement de l'objet après sa destruction ne sont pas définis.

Paramètres

Article Descriptif
attr Indique l'objet d'attributs mutex à initialiser ou à supprimer.

Valeurs renvoyées

Une fois l'opération terminée, pthread_mutexattr_init et pthread_mutexattr_destroy renvoient zéro. Sinon, un numéro d'erreur est renvoyé pour indiquer l'erreur.

Codes d'erreur

La fonction pthread_mutexattr_init échoue si:

Article Descriptif
ENOMEM La mémoire est insuffisante pour initialiser l'objet d'attributs mutex.

La fonction pthread_mutexattr_destroy échoue si:

Article Descriptif
EINVAL La valeur spécifiée par attr n'est pas valide.

Ces fonctions ne renverront pas EINTR.