NAME
IOMux::Poll - simplify use of poll()
INHERITANCE
IOMux::Poll
is a IOMux
SYNOPSIS
use IOMux::Poll;
my $mux = IOMux::Poll->new;
my $server = IOMux::Service::TCP->new(...);
$mux->add($server);
$mux->loop;
DESCRIPTION
Multiplexer based on the poll()
system call, defined by POSIX.
The poll
has less administration overhead than the select
call (implemented via IOMux::Select) because it avoids the need to play with bit-vectors to see which file handles got activated. However, poll
is not supported on all platforms.
METHODS
Constructors
- IOMux::Poll->new(OPTIONS) See "Constructors" in IOMux
Accessors
User interface
- $obj->add(HANDLER|BUNDLE) See "User interface" in IOMux
- $obj->endLoop(BOOLEAN) See "User interface" in IOMux
- $obj->loop([HEARTBEAT]) See "User interface" in IOMux
- $obj->open(MODE, PARAMS) See "User interface" in IOMux
For internal use
- $obj->changeTimeout(FILENO, OLDTIMEOUT, NEWTIMEOUT) See "For internal use" in IOMux
- $obj->fdset(FILENO, STATE, READ, WRITE, EXCEPT) See "For internal use" in IOMux
- $obj->handler(FILENO, [HANDLER]) See "For internal use" in IOMux
- $obj->handlers See "For internal use" in IOMux
- $obj->remove(FILENO) See "For internal use" in IOMux
DETAILS
Installation
Event managers
File handles
Alternatives
IO::Multiplex
Difference to IO::Multiplex
IO::Async / Net::Async
Implementation limitations
Poll is only available on UNIX. Windows Vista has added a WSAPoll with comparible functionality (probably), but afaik there is no binary wrapper available for perl yet.
SEE ALSO
This module is part of IOMux distribution version 0.12, built on January 27, 2011. Website: http://perl.overmeer.net/ All modules in this suite: "Any::Daemon", "IOMux", and "IOMux::HTTP".
Please post questions or ideas to perl@overmeer.net
LICENSE
Copyrights 2011 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