perl - 如何为 cmd 命令设置超时?

标签 perl cmd

我在 cmd 中只有以下命令

perl csv2rrd3.pl

但它总是运行很长时间。
有没有办法为它设置超时?
或者我应该在 perl 脚本中完成?如何?

谢谢

最佳答案

在 Perl 内部,您可以设置 alarm 几秒钟后关闭。然后,您可以使用信号处理程序来捕获事件。任何时候只能激活一个闹钟

{ # enter new scope
    # set signal handler
    local $SIG{ALRM} = sub {
       # do cleanup, like closing sockets or whatever
       print STDERR "exited with ALARM\n";
       exit;
    };
    alarm 30; # try half a minute
    ...; # do expensive stuff
}

关于perl - 如何为 cmd 命令设置超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13720608/

相关文章:

c++ - 输出到 cmd 的字符串显示正确但未被识别为命令

python - 命令行参数基础,Python

python - 对象继承和嵌套 cmd

html - 使用 perl 在 MySql DB 中插入表单数据

perl - Perl 中策略模式的干净实现

regex - 在同一位置查找和替换匹配的字母

sql - 如何在 DBIx::Class 结果集搜索中检索每个组中的最新记录?

perl - 针对 Mojolicious 的 REST 调用中的错误的 HTTP 响应

powershell - 列出一个文件夹结构中不在另一个文件夹结构中的文件

cmd - 仅当 command1 在 cmd windows shell 中成功时才运行 command2