Tony Cook > POE-XS-Loop-EPoll-1.002 > POE::XS::Loop::EPoll

Download:
POE-XS-Loop-EPoll-1.002.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  1
Open  0
View/Report Bugs
Module Version: 1.002   Source   Latest Release: POE-XS-Loop-EPoll-1.003

NAME ^

POE::XS::Loop::EPoll - an XS implementation of POE::Loop, using Linux` epoll(2).

SYNOPSIS ^

  use POE::Kernel { loop => 'POE::XS::Loop::EPoll' };

DESCRIPTION ^

This class is an implementation of the abstract POE::Loop interface written in C using the Linux epoll(2) family of system calls.

Signals are left to POE::Loop::PerlSignals.

The epoll_ctl() call returns an error when you attempt to poll regular files, POE::XS::Loop::EPoll emulate's poll(2)'s behaviour with regular files under Linux - ie. they're always readable/writeable.

If you see an error:

  POE::XS::Loop::EPoll hasn't been initialized correctly

then the loop hasn't been loaded correctly, in POE <= 1.287 the following:

  # this doesn't work
  use POE qw(XS::Loop::EPoll);

will not load the loop correctly, you will need to do:

  use POE::Kernel { loop => 'POE::XS::Loop::EPoll' };
  use POE;

SEE ALSO ^

POE, POE::Loop, POE::XS::Loop::Poll.

BUGS ^

Relies upon small fd numbers, but then a lot of code does.

LICENSE ^

POE::XS::Loop::EPoll is licensed under the same terms as Perl itself.

AUTHOR ^

Tony Cook <tonyc@cpan.org>

sub skip_tests { $ENV{POE_EVENT_LOOP} = 'POE::XS::Loop::EPoll'; return; }

syntax highlighting: