【发布时间】:2014-05-16 12:55:57
【问题描述】:
如何设置 5 分钟超时?
我的程序正在这样做:
# I need to try something every 3 seconds, for at most 5 minutes
$maxtime = time() + (5 * 60);
$success = 0;
while (($success == 0) && (time() < $maxtime)) {
$success = try_something();
sleep (3) if ($success == 0);
}
问题:这个程序在启动后运行。它运行的嵌入式系统没有 rtc/clock 电池。时钟从 2000 年 1 月 1 日开始,然后在它运行的第一分钟,它获得网络并且 ntp 将时钟设置为更新的时钟,使循环在 5 分钟超时之前退出。
即使系统时钟被其他外部程序更改,在 perl 脚本中“计数 5 分钟”的正确方法是什么?
【问题讨论】:
-
使用系统正常运行时间怎么样?有一个 Perl 模块会返回一个
int值,表示正常运行时间(以秒为单位)。