ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/EV/EV.pm
(Generate patch)

Comparing EV/EV.pm (file contents):
Revision 1.59 by root, Sat Dec 1 22:51:34 2007 UTC vs.
Revision 1.61 by root, Thu Dec 6 03:13:07 2007 UTC

67package EV; 67package EV;
68 68
69use strict; 69use strict;
70 70
71BEGIN { 71BEGIN {
72 our $VERSION = '1.5'; 72 our $VERSION = '1.6';
73 use XSLoader; 73 use XSLoader;
74 XSLoader::load "EV", $VERSION; 74 XSLoader::load "EV", $VERSION;
75} 75}
76 76
77@EV::IO::ISA = 77@EV::IO::ISA =
131innermost call to EV::loop return. 131innermost call to EV::loop return.
132 132
133When called with an argument of EV::UNLOOP_ALL, all calls to EV::loop will return as 133When called with an argument of EV::UNLOOP_ALL, all calls to EV::loop will return as
134fast as possible. 134fast as possible.
135 135
136=item $count = EV::loop_count
137
138Return the number of times the event loop has polled for new
139events. Sometiems useful as a generation counter.
140
136=item EV::once $fh_or_undef, $events, $timeout, $cb->($revents) 141=item EV::once $fh_or_undef, $events, $timeout, $cb->($revents)
137 142
138This function rolls together an I/O and a timer watcher for a single 143This function rolls together an I/O and a timer watcher for a single
139one-shot event without the need for managing a watcher object. 144one-shot event without the need for managing a watcher object.
140 145
748The C<fork_ns> variant doesn't start (activate) the newly created watcher. 753The C<fork_ns> variant doesn't start (activate) the newly created watcher.
749 754
750=back 755=back
751 756
752 757
758=head1 PERL SIGNALS
759
760While Perl signal handling (C<%SIG>) is not affected by EV, the behaviour
761with EV is as the same as any other C library: Perl-signals will only be
762handled when Perl runs, which means your signal handler might be invoked
763only the next time an event callback is invoked.
764
765The solution is to use EV signal watchers (see C<EV::signal>), which will
766ensure proper operations with regards to other event watchers.
767
768If you cannot do this for whatever reason, you can also force a watcher
769to be called on every event loop iteration by installing a C<EV::check>
770watcher:
771
772 my $async_check = EV::check sub { };
773
774This ensures that perl shortly gets into control for a short time, and
775also ensures slower overall operation.
776
753=head1 THREADS 777=head1 THREADS
754 778
755Threads are not supported by this module in any way. Perl pseudo-threads 779Threads are not supported by this module in any way. Perl pseudo-threads
756is evil stuff and must die. As soon as Perl gains real threads I will work 780is evil stuff and must die. As soon as Perl gains real threads I will work
757on thread support for it. 781on thread support for it.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines