(PHP 4, PHP 5, PHP 7, PHP 8)
sem_get — Retorna un identificador de semáforo
$key,$max_acquire = 1,$permissions = 0666,$auto_release = truesem_get() retorna un identificador que podrá ser utilizado para acceder a un semáforo System V.
Una segunda llamada a sem_get() con la misma clave retornará un identificador diferente, pero ambos identificadores permitirán acceder al mismo semáforo.
Si key es 0, un nuevo semáforo
privado se crea para cada llamada a sem_get().
key
max_acquire
El número de procesos que pueden reservar simultáneamente el semáforo
se especifica en el argumento max_acquire.
permissionsLos permisos del semáforo. Actualmente, este valor solo se aplica si el proceso es el único proceso actualmente adjunto al semáforo.
auto_release
El argumento opcional auto_release especifica
si el semáforo debe ser liberado automáticamente al cerrar.
Retorna un recurso de semáforo en caso de éxito, y false en caso de error.
| Versión | Descripción |
|---|---|
| 8.0.0 | En caso de éxito, esta función retorna una instancia de SysvSemaphore ahora; anteriormente; un resource era retornado. |
| 8.0.0 |
El tipo de auto_release ha sido modificado de
int a bool.
|
Al utilizar la función sem_get() para acceder a
un semáforo creado fuera de PHP, tenga en cuenta que el semáforo debe haber
sido creado como un conjunto de 3 semáforos (por ejemplo, especificando 3 como
argumento nsems durante la llamada a la función C
semget()), de lo contrario, PHP no será capaz de acceder a este
semáforo.