当前位置:  开发笔记 > 编程语言 > 正文

如何在Perl中不阻塞地测试STDIN?

如何解决《如何在Perl中不阻塞地测试STDIN?》经验,为你挑选了1个好方法。



1> jj33..:

内置的Perl是系统调用select()的传递select(),但我推荐的是理智的人IO::Select.

代码示例:

#!/usr/bin/perl

use IO::Select;

$s = IO::Select->new();
$s->add(\*STDIN);

while (++$i) {
  print "Hiya $i!\n";
  sleep(5);
  if ($s->can_read(.5)) {
    chomp($foo = );
    print "Got '$foo' from STDIN\n";
  }
}


其他任何人都要注意,"IO :: Select"仅适用于UNIX,不适用于Windows!
推荐阅读
刘美娥94662
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有