=encoding utf8 =head1 NAME IOMux::Poll - simplify use of poll() =head1 INHERITANCE IOMux::Poll is an IOMux =head1 SYNOPSIS use IOMux::Poll; my $mux = IOMux::Poll->new; my $server = IOMux::Service::TCP->new(...); $mux->add($server); $mux->loop; =head1 DESCRIPTION Multiplexer based on the C<poll()> system call, defined by POSIX. The C<poll> has less administration overhead than the C<select> call (implemented via L<IOMux::Select|IOMux::Select>) because it avoids the need to play with bit-vectors to see which file handles got activated. However, C<poll> is not supported on all platforms. Extends L<"DESCRIPTION" in IOMux|IOMux/"DESCRIPTION">. =head1 METHODS Extends L<"METHODS" in IOMux|IOMux/"METHODS">. =head2 Constructors Extends L<"Constructors" in IOMux|IOMux/"Constructors">. =over 4 =item IOMux::Poll-E<gt>B<new>(%options) Inherited, see L<IOMux/"Constructors"> =back =head2 Accessors Extends L<"Accessors" in IOMux|IOMux/"Accessors">. =over 4 =item $obj-E<gt>B<poller>() The internal IO::Poll object. =back =head2 User interface Extends L<"User interface" in IOMux|IOMux/"User interface">. =over 4 =item $obj-E<gt>B<add>($handler|$bundle) Inherited, see L<IOMux/"User interface"> =item $obj-E<gt>B<endLoop>(BOOLEAN) Inherited, see L<IOMux/"User interface"> =item $obj-E<gt>B<loop>( [$heartbeat] ) Inherited, see L<IOMux/"User interface"> =item $obj-E<gt>B<open>($mode, $params) Inherited, see L<IOMux/"User interface"> =back =head2 For internal use Extends L<"For internal use" in IOMux|IOMux/"For internal use">. =over 4 =item $obj-E<gt>B<changeTimeout>($fileno, $oldtimeout, $newtimeout) Inherited, see L<IOMux/"For internal use"> =item $obj-E<gt>B<fdset>($fileno, $state, $read, $write, $except) Inherited, see L<IOMux/"For internal use"> =item $obj-E<gt>B<handler>( $fileno, [$handler] ) Inherited, see L<IOMux/"For internal use"> =item $obj-E<gt>B<handlers>() Inherited, see L<IOMux/"For internal use"> =item $obj-E<gt>B<remove>($fileno) Inherited, see L<IOMux/"For internal use"> =back =head1 DETAILS Extends L<"DETAILS" in IOMux|IOMux/"DETAILS">. =head2 Installation Extends L<"Installation" in IOMux|IOMux/"Installation">. =head2 Event managers Extends L<"Event managers" in IOMux|IOMux/"Event managers">. =head2 File handles Extends L<"File handles" in IOMux|IOMux/"File handles">. =head2 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. =head1 SEE ALSO This module is part of IOMux distribution version 1.01, built on January 15, 2020. Website: F<http://perl.overmeer.net/CPAN> =head1 LICENSE Copyrights 2011-2020 by [Mark Overmeer <markov@cpan.org>]. 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 F<http://dev.perl.org/licenses/>