(PECL sync >= 1.0.0)
SyncSemaphore::lock — Decreases the count of the semaphore or waits
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.
Returns true
on success or false
on failure.
Example #1 SyncSemaphore::lock() example
<?php
$semaphore = new SyncSemaphore("LimitedResource_2clients", 2);
if (!$semaphore->lock(3000))
{
echo "Unable to lock semaphore.";
exit();
}
/* ... */
$semaphore->unlock();
?>