--- cvsroot/EV/EV.pm 2008/07/08 18:53:11 1.100 +++ cvsroot/EV/EV.pm 2008/10/02 12:26:25 1.104 @@ -57,11 +57,12 @@ This module provides an interface to libev (L). While the documentation -below is comprehensive, one might also consult the documentation of libev -itself (L) for more -subtle details on watcher semantics or some discussion on the available -backends, or how to force a specific backend with C, or just -about in any case because it has much more detailed information. +below is comprehensive, one might also consult the documentation of +libev itself (L or +F) for more subtle details on watcher semantics or some +discussion on the available backends, or how to force a specific backend +with C, or just about in any case because it has much more +detailed information. This module is very fast and scalable. It is actually so fast that you can use it through the L module, stay portable to other event @@ -77,7 +78,7 @@ use strict; BEGIN { - our $VERSION = '3.43'; + our $VERSION = '3.44'; use XSLoader; XSLoader::load "EV", $VERSION; } @@ -124,16 +125,18 @@ =item $loop = new EV::loop [$flags] -Create a new event loop as per the specified flags. Please refer to the -C function description in the libev documentation -(L) -for more info. +Create a new event loop as per the specified flags. Please refer to +the C function description in the libev documentation +(L, +or locally-installed as F manpage) for more info. The loop will automatically be destroyed when it is no longer referenced by any watcher and the loop object goes out of scope. -Using C is recommended, as only the default event loop -is protected by this module. +If you are not embedding the loop, then Using C +is recommended, as only the default event loop is protected by this +module. If you I embedding this loop in the default loop, this is not +necessary, as C automatically does the right thing on fork. =item $loop->loop_fork @@ -282,8 +285,8 @@ These advanced functions set the minimum block interval when polling for I/O events and the minimum wait interval for timer events. See the libev documentation at -L for -a more detailed discussion. +L +(locally installed as F) for a more detailed discussion. =back @@ -957,7 +960,7 @@ See the libev documentation at L -for more details. +(locally installed as F) for more details. In short, this watcher is most useful on BSD systems without working kqueue to still be able to handle a large number of sockets: @@ -978,18 +981,18 @@ =over 4 -=item $w = EV::embed $otherloop, $callback +=item $w = EV::embed $otherloop[, $callback] -=item $w = EV::embed_ns $otherloop, $callback +=item $w = EV::embed_ns $otherloop[, $callback] -=item $w = $loop->embed ($otherloop, $callback) +=item $w = $loop->embed ($otherloop[, $callback]) -=item $w = $loop->embed_ns ($otherloop, $callback) +=item $w = $loop->embed_ns ($otherloop[, $callback]) Call the callback when the embedded event loop (C<$otherloop>) has any -I/O activity. The C<$callback> should alwas be specified as C in -this version of EV, which means the embedded event loop will be managed -automatically. +I/O activity. The C<$callback> is optional: if it is missing, then the +embedded event loop will be managed automatically (which is recommended), +otherwise you have to invoke C yourself. The C variant doesn't start (activate) the newly created watcher.