IO::Poll - 系统轮询调用的对象接口
use IO::Poll qw(POLLRDNORM POLLWRNORM POLLIN POLLHUP);
$poll = IO::Poll->new();
$poll->mask($input_handle => POLLIN);
$poll->mask($output_handle => POLLOUT);
$poll->poll($timeout);
$ev = $poll->events($input);
IO::Poll
是系统级轮询例程的简单接口。
如果给定了 EVENT_MASK,那么如果 EVENT_MASK 非零,则将 IO 添加到文件描述符列表中,并且对 poll 的下一次调用将检查 EVENT_MASK 中指定的任何事件。如果 EVENT_MASK 为零,则将从文件描述符列表中删除 IO。
如果未给定 EVENT_MASK,则返回值将是 IO 的当前事件掩码值。
调用系统级轮询例程。如果未指定 TIMEOUT,则该调用将被阻塞。返回发生事件的句柄数,或在出错时返回 -1。
返回事件掩码,该掩码表示在上次调用 poll
期间在 IO 上发生的事件。
从下一轮轮询的文件描述符列表中移除 IO。
返回句柄列表。如果未给出 EVENT_MASK,则将返回已知的所有句柄的列表。如果给出了 EVENT_MASK,则将返回一个句柄列表,其中包含在最后一次调用 ti poll
期间发生了 EVENT_MASK 指定的某个事件的句柄。
Graham Barr。目前由 Perl Porters 维护。请在 https://github.com/Perl/perl5/issues 报告所有错误。
版权所有 (c) 1997-8 Graham Barr <[email protected]>。保留所有权利。此程序是免费软件;您可以在与 Perl 本身相同的条款下重新分发或修改它。