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
}