PHP 4, PHP 5, PHP 7, PHP 8
sem_acquire - Acquire a semaphore

sem_acquire( SysvSemaphore$semaphore, [bool$non_blocking = false] ): bool

sem_acquire by default blocks (if necessary) until the semaphore can be acquired. A process attempting to acquire a semaphore which it has already acquired will block forever if acquiring the semaphore would cause its maximum number of semaphore to be exceeded.

After processing a request, any semaphores acquired by the process but not explicitly released will be released automatically and a warning will be generated.



semaphore is a semaphore obtained from sem_get.


Specifies if the process shouldn't wait for the semaphore to be acquired. If set to true, the call will return false immediately if a semaphore cannot be immediately acquired.

Return Values

Returns true on success or false on failure.


Version Description
8.0.0 semaphore expects a SysvSemaphore instance now; previously, a resource was expected.

Related Functions

Function sem_acquire:

  • Manual

Semaphore, Shared Memory and IPC Functions

Most used PHP functions