Man page - sem_open(3)

Packages contains this manual

Available languages:

en fr ja ru ro

Manual

sem_open

NOM
BIBLIOTHÈQUE
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
ATTRIBUTS
STANDARDS
HISTORIQUE
VOIR AUSSI
TRADUCTION

NOM

sem_open - Initialiser et ouvrir un sémaphore nommé

BIBLIOTHÈQUE

BibliothĂšque de threads POSIX ( libpthread , -lpthread )

SYNOPSIS

#include <fcntl.h> /* Pour les constantes O_* */
#include <sys/stat.h>
/* Pour les constantes des modes */
#include <semaphore.h>

sem_t *sem_open(const char * nom , int oflag );
sem_t *sem_open(const char *
nom , int oflag ,
mode_t
mode , unsigned int valeur );

DESCRIPTION

sem_open () crée un nouveau sémaphore POSIX ou en ouvre un existant. Le sémaphore est identifié par nom . Pour les détails de la construction de nom , consultez sem_overview (7).

L’argument oflag spĂ©cifie les attributs qui contrĂŽlent la maniĂšre d’opĂ©rer de l’appel (les dĂ©finitions des valeurs des attributs peuvent ĂȘtre obtenues en incluant <fcntl.h> ). Si O_CREAT est spĂ©cifiĂ© dans oflag , le sĂ©maphore est créé s’il n’existe pas dĂ©jĂ . Le propriĂ©taire (UID) du sĂ©maphore est l’UID effectif du processus appelant. Le groupe propriĂ©taire (GID) est le GID effectif du processus appelant. Si O_CREAT et O_EXCL sont tous les deux spĂ©cifiĂ©s dans oflag , une erreur sera renvoyĂ©e si le sĂ©maphore nom existe dĂ©jĂ .

Si O_CREAT est spĂ©cifiĂ© dans oflag , deux autres arguments doivent ĂȘtre fournis. L’argument mode spĂ©cifie les permissions Ă  placer sur le nouveau sĂ©maphore, comme pour open (2) (les dĂ©finitions symboliques des bits de permissions peuvent ĂȘtre obtenues en incluant <sys/stat.h> ). Ces permissions sont « masquĂ©es » avec l’umask du processus. Les permissions de lecture et d’écriture devraient ĂȘtre accordĂ©es Ă  chaque classe d’utilisateurs qui aura accĂšs au sĂ©maphore. L’argument valeur spĂ©cifie la valeur initiale du nouveau sĂ©maphore. Si O_CREAT est spĂ©cifiĂ© et que le sĂ©maphore nom existe dĂ©jĂ , mode et valeur sont ignorĂ©s.

VALEUR RENVOYÉE

S’il rĂ©ussit, sem_open () renvoie l’adresse du nouveau sĂ©maphore ; cette adresse est utilisĂ©e lors de l’appel des autres fonctions sur les sĂ©maphores. S’il Ă©choue, sem_open () renvoie SEM_FAILED et Ă©crit errno en consĂ©quence.

ERREURS

EACCES

Le sĂ©maphore existe, mais l’appelant n’a pas la permission de l’ouvrir.

EEXIST

O_CREAT et O_EXCL ont été tous les deux spécifiés dans oflag , mais un sémaphore nom existe déjà.

EINVAL

valeur était plus grand que SEM_VALUE_MAX .

EINVAL

nom consiste en une barre oblique « / », suivie d’aucun autre caractĂšre.

EMFILE

La limite du nombre de descripteurs de fichiers par processus a été atteinte.

ENAMETOOLONG

nom est trop long.

ENFILE

La limite du nombre total de fichiers ouverts pour le systÚme entier a été atteinte.

ENOENT

L’attribut O_CREAT n’était pas spĂ©cifiĂ© dans oflag et aucun sĂ©maphore nom n’existe ; ou O_CREAT Ă©tait spĂ©cifiĂ©, mais nom n’était pas correctement formĂ©.

ENOMEM

Mémoire insuffisante.

ATTRIBUTS

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

Image grohtml-3882301-1.png

STANDARDS

POSIX.1-2008.

HISTORIQUE

POSIX.1-2001.

VOIR AUSSI

sem_close (3), sem_getvalue (3), sem_post (3), sem_unlink (3), sem_wait (3), sem_overview (7)

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