【问题标题】:Linux coreutils timeout Relative or Absolute time?Linux coreutils timeout 相对时间还是绝对时间?
【发布时间】:2014-04-28 16:52:50
【问题描述】:

我正在使用 coreutils 8.13,并希望将 timeout 命令与 python 子进程结合使用。如果在长时间运行的调用期间更改了系统时钟,超时命令会按预期工作吗?也就是说,timeout命令是使用绝对时间(受系统时钟变化影响)还是相对时间(不受系统时钟变化影响)?

编辑:经过一番挖掘,我缩小了答案取决于 unistd.h 中“警报”的行为。仍在挖掘源...请救救我。

Edit2:旧版本的 coreutils (=8.13) 使用 timer_create(2) 和 CLOCK_REALTIME 来超时。 This 帖子告诉我,我的实现应该受到系统时钟变化的影响。然而,事实并非如此。使用运行 while 循环的 python 脚本进行的简单测试表明,更改系统时钟不会影响超时。 ???

【问题讨论】:

    标签: linux timeout


    【解决方案1】:

    对 CLOCK_REALTIME 时钟的调整对基于该时钟的相对计时器没有影响。

    至少,根据this somewhat similar question中的this answer

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-07
      • 2011-11-21
      • 1970-01-01
      • 2011-04-29
      • 1970-01-01
      • 1970-01-01
      • 2015-11-13
      • 2011-08-31
      相关资源
      最近更新 更多