(PECL sync >= 1.0.0)
SyncSemaphore::lock — Decreases the count of the semaphore or waits
$wait
= -1
] )Decreases the count of a SyncSemaphore object or waits until the semaphore becomes non-zero.
wait
The number of milliseconds to wait for the semaphore. A value of -1 is infinite.
A boolean of TRUE if the lock operation was successful, FALSE otherwise.
Пример #1 SyncSemaphore::lock() example
<?php
$semaphore = new SyncSemaphore("LimitedResource_2clients", 2);
if (!$semaphore->lock(3000))
{
echo "Unable to lock semaphore.";
exit();
}
/* ... */
$semaphore->unlock();
?>