--- cvsroot/EV/EV.pm 2008/01/28 12:24:05 1.83 +++ cvsroot/EV/EV.pm 2008/04/16 17:08:29 1.88 @@ -70,7 +70,7 @@ use strict; BEGIN { - our $VERSION = '3.0'; + our $VERSION = '3.3'; use XSLoader; XSLoader::load "EV", $VERSION; } @@ -86,6 +86,7 @@ @EV::Check::ISA = @EV::Embed::ISA = @EV::Fork::ISA = +@EV::Async::ISA = "EV::Watcher"; @EV::Loop::Default::ISA = "EV::Loop"; @@ -535,7 +536,7 @@ at January 1st 2011 then it will run when the system time reaches or surpasses this time. -=item * non-repeating interval timer ($interval > 0, $reschedule_cb = 0) +=item * repeating interval timer ($interval > 0, $reschedule_cb = 0) In this mode the watcher will always be scheduled to time out at the next C<$at + N * $interval> time (for some integer N) and then repeat, @@ -970,6 +971,28 @@ =back +=head3 ASYNC WATCHERS - how to wake up another event loop + +Async watchers are provided by EV, but have little use in perl directly, as perl +neither supports threads nor direct access to signal handlers or other +contexts where they could be of value. + +It is, however, possible to use them from the XS level. + +Please see the libev documentation for further details. + +=over 4 + +=item $w = EV::async $callback + +=item $w = EV::async_ns $callback + +=item $w->send + +=item $bool = $w->async_pending + +=back + =head1 PERL SIGNALS