sem_acquire

(PHP 3 >= 3.0.6, PHP 4, PHP 5)

sem_acquire -- Acquire a semaphore

Description

bool sem_acquire ( resource sem_identifier )

sem_acquire() 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. sem_identifier is a semaphore ressource, obtained from sem_get().

如果成功则返回 TRUE,失败则返回 FALSE

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

See also sem_get(), and sem_release().


add a note add a note User Contributed Notes
gladd at trash dot eris dot qinetiq dot com
14-Apr-2004 05:02
Just to clarify what is meant by "process" above:

On the Apache webserver, many PHP requests will be executed within the same process space because it is multithreaded. However, any semaphores got and acquired by a script and not released and removed will still be automatically cleaned up by the PHP interpreter each time the script terminates.

Remove any trash before emailing!
24-Jun-2003 07:58
there is no way to use IPC_NOWAIT flag.