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.
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 theFD_*
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
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.96, built on November 28, 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