The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

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/