The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

POSIX::1003::Events - POSIX for the file-system

INHERITANCE

 POSIX::1003::Events
   is a POSIX::1003::Module

SYNOPSIS

  use POSIX::1003::Events;

DESCRIPTION

See documentation in the base class.

METHODS

See documentation in the base class.

POSIX::1003::Events->exampleValue(NAME)

See "METHODS" in POSIX::1003::Module

$obj->import()

See "METHODS" in POSIX::1003::Module

FUNCTIONS

Standard POSIX

FD_CLR(FD, SET)

Remove the file descriptor FD from the SET. If FD is not a member of this set, there shall be no effect on the set, nor will an error be returned.

FD_ISSET(FD, SET)

Returns true if the file descriptor FD is a member of the SET

FD_SET(FD, SET)

Add the file descriptor FD to the SET If the file descriptor FD is already in this set, there is no effect on the set, nor will an error be returned.

FD_ZERO(SET)

Clear the set

poll(HASH, [TIMEOUT])

If TIMEOUT is not defined, the poll will wait until something happend. When undef is returned, then there is an error. With an empy HASH returned, then the poll timed out. Otherwise, the returned HASH contains the FDs where something happened.

select(RBITS, WBITS, EBITS, [TIMEOUT])

Perl core contains two functions named select. The second is the one we need here. Without TIMEOUT, the select will wait until an event emerges (or an interrupt).

In the example below, $rin is a bit-set indicating on which file-descriptors should be listed for read events (data available) and $rout is a sub-set of that. The bit-sets can be manipulated with the FD_* functions also exported by this module.

  my ($nfound, $timeleft) =
    select($rout=$rin, $wout=$win, $eout=$ein, $timeout);

  my $nfound = select($rout=$rin, $wout=$win, $eout=$ein);

The select interface is inefficient when used with many filehandles. You can better use poll().

Additional

poll_names()

Returns a list with all known names, unsorted.

CONSTANTS

The following constants where detected on your system when the module got installed. The second column shows the value which where returned at that time.

  POLLERR     8         POLLOUT     4         POLLWRBAND  512
  POLLHUP     16        POLLPRI     2         POLLWRNORM  256
  POLLIN      1         POLLRDBAND  128       
  POLLNVAL    32        POLLRDNORM  64        

SEE ALSO

This module is part of POSIX-1003 distribution version 0.98, built on December 03, 2013. Website: http://perl.overmeer.net. The code is based on POSIX, which is released with Perl itself. See also POSIX::Util for additional functionality.

COPYRIGHTS

Copyrights 2011-2013 on the perl code and the related documentation by [Mark Overmeer]. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html