Coro::Timer - timers and timeouts, independent of any event loop
# This package is mostly obsoleted by Coro::AnyEvent.
use Coro::Timer qw(timeout);
# nothing exported by default
This package has been mostly obsoleted by Coro::AnyEvent, the only really useful
function left in here is "timeout".
- $flag = timeout $seconds
- This function will wake up the current coroutine after
$seconds seconds and sets $flag to true (it is false initially). If $flag
goes out of scope earlier then nothing happens.
This is used by Coro itself to implement the "timed_down",
"timed_wait" etc. primitives. It is used like this:
sub timed_wait {
my $timeout = Coro::Timer::timeout 60;
while (condition false) {
Coro::schedule; # wait until woken up or timeout
return 0 if $timeout; # timed out
}
return 1; # condition satisfied
}
Marc A. Lehmann <[email protected]>
http://software.schmorp.de/pkg/Coro.html