Retourne un identifiant de sémaphore

# sem_get

(PHP 4, PHP 5, PHP 7, PHP 8)

sem_get — Retourne un identifiant de sémaphore

### Description

function sem_get(
int `$key`,
int `$max_acquire` = 1,
int `$permissions` = 0666,
bool `$auto_release` = `true`
): SysvSemaphore|false

sem_get() retourne un identifiant qui pourra être utilisé pour accéder à un sémaphore System V.

Un deuxième appel à sem_get() avec la même clé retournera un identifiant différent, mais les deux identifiants permettront d'accéder au même sémaphore.

Si `key` est `0`, un nouveau sémaphore privé est créé pour chaque appel à sem_get().

### Liste de paramètres

`key`
`max_acquire`
  Le nombre de processus qui peuvent réserver simultanément le sémaphore est précisé dans le paramètre `max_acquire`.
`permissions`
  Les permissions du sémaphore. Actuellement, cette valeur n'est affectée que si le processus est le seul processus actuellement attaché au sémaphore.
`auto_release`
  Le paramètre optionnel `auto_release` spécifie si le sémaphore doit être automatiquement libéré à la fermeture.

### Valeurs de retour

Retourne une ressource de sémaphore en cas de succès, et `false` en cas d'erreur.

### Historique

Version | Description
--- | ---
8.0.0 | En cas de succès, cette fonction retourne une instance de SysvSemaphore désormais ; auparavant, une resource était retournée.
8.0.0 | Le type de `auto_release` a été modifié de int à bool.

### Notes

Avertissement

Lors de l'utilisation de la fonction sem_get() pour accéder à un sémaphore créé en dehors de PHP, veuillez noter que le sémaphore doit avoir été créé comme un jeu de 3 sémaphores (par exemple, en spécifiant 3 comme paramètre `nsems` lors de l'appel à la fonction C `semget()`), sinon, PHP ne sera pas capable d'accéder à ce sémaphore.

### Voir aussi

- sem_acquire() - Réserve un sémaphore
- sem_release() - Libère un sémaphore
- ftok() - Convertit un chemin et un identifiant de projet en une clé System V IPC

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open