# sem_get

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

sem_get — Obtener el id de un semáforo

### Descripción

sem_get(
int `$key`,
int `$max_acquire` = 1,
int `$perm` = 0666,
int `$auto_release` = 1
): resource

sem_get() devuelve un id que se puede usar para acceder al semáforo de System V con la clave dada por `key`.

Una segunda llamada a sem_get() para la misma clave devolverá un identificador de semáforo diferente, pero ambos identificadores accederán al mismo semáforo subyacente.

### Parámetros

`key`

`max_acquire`

  El número de procesos que puede adquirir el semáforo simultáneamente está establecido por `max_acquire`.

`perm`

  Los permisos del semáforo. En realidad este valor se establece sólo si el proceso que lo encuentra es el único proceso actualmente adjunto al semáforo.

`auto_release`

  Especifica si el semáforo debería ser liberado automáticamente al cierre de la petición.

### Valores devueltos

Devuelve un identificador de semáforo positivo en caso de éxito, o `false` en caso de error.

### Notas

Advertencia

Al usar sem_get() para acceder a un semáforo creado fuera de PHP, se ha de observar que el semáforo debe haber sido creado como un conjunto de 3 semáforos (por ejemplo, especificando 3 en el parámetro `nsems`, al llamar a la función `semget()` de C), de lo contrario, PHP no podrá acceder al semáforo.

### Ver también

- sem_acquire() - Adquirir un semáforo
- sem_release() - Liberar un semáforo
- ftok() - Convertir un nombre de ruta y un identificador de proyecto a una clave IPC de System V