当前位置: 首页 > 文档资料 > Perl 入门教程 >

alarm

优质
小牛编辑
130浏览
2023-12-01

描述 (Description)

此功能设置“警报”,使当前进程在EXPR秒内接收SIGALRM信号。 如果省略EXPR,则使用$ _的值。

实际的时间延迟并不精确,因为不同的系统以不同的方式实现报警功能。 实际时间可能比请求的值多或少一秒。 您一次只能设置一个闹钟定时器。 如果计时器已在运行并且您对警报功能进行了新的调用,则警报计时器将重置为新值。 通过指定值0,可以在不设置新计时器的情况下重置运行计时器。

语法 (Syntax)

以下是此函数的简单语法 -

alarm EXPR
alarm

返回值 (Return Value)

此函数返回Integer值ie。 上一个计时器的剩余秒数。

例子 (Example)

以下是显示其基本用法的示例代码 -

#!/usr/bin/perl
eval {
   local $SIG{ALRM} = sub { die "alarm\n" }; # NB: \n required
   alarm $timeout;
   $nread = sysread SOCKET, $buffer, $size;
   alarm 0;
};
if ($@) {
   die unless $@ eq "alarm\n";   # propagate unexpected errors
      # timed out
} else {
   # didn't
}