NAME `IO::Ppoll' - Object interface to Linux's `ppoll()' call
SYNOPSIS use IO::Ppoll qw( POLLIN POLLOUT ); use POSIX qw(
sigprocmask SIG_BLOCK SIGHUP ); my $ppoll = IO::Ppoll->new();
$ppoll->mask( $input_handle => POLLIN ); $ppoll->mask(
$output_handle => POLLOUT ); $SIG{HUP} = sub { print "SIGHUP
happened\n"; }; sigprocmask( SIG_BLOCK, POSIX::SigSet->new(
SIGHUP ), undef ); # If a SIGHUP happens, it can only happen
during this poll $ppoll->poll( $timeout ); $input_ev =
$poll->events( $input_handle ); DESCRIPTION `IO::Ppoll' is a
simple interface to Linux's `ppoll()' system call. It provides
an interface that is drop-in compatible with IO::Poll. The
object stores a signal mask that will be in effect during the
actual `ppoll()' system call and has additional methods for
manipulating the signal mask. The `ppoll()' system call
atomically switches the process's signal mask to that provided
by the call, waits identically to `poll()', then switches it
back again. This allows a program to safely wait on either file