NAME
Coro::Semaphore - non-binary semaphores
SYNOPSIS
use Coro::Semaphore;
$sig = new Coro::Semaphore [initial value];
$sig->down; # wait for signal
# ... some other "thread"
$sig->up;
DESCRIPTION
- new [inital count, default zero]
-
Creates a new sempahore object with the given initial lock count. The default lock count is 1, which means it is unlocked by default.
- $sem->down
-
Decrement the counter, therefore "locking" the semaphore. This method waits until the semaphore is available if the counter is zero.
- $sem->up
-
Unlock the semaphore again.
- $sem->try
-
Try to
down
the semaphore. Returns true when this was possible, otherwise return false and leave the semaphore unchanged.
AUTHOR
Marc Lehmann <pcg@goof.com>
http://www.goof.com/pcg/marc/