cron究竟是如何工作的?

时间:2015-11-07 11:19:32

标签: c++ algorithm c++11 cron

我想实现一个简单的C ++类,它解析cron条目并按指定的时间表执行任务。 Wiki说cron已经实现了以下算法:

  1. 在启动时,在所有帐户持有人的主目录中查找名为.crontab的文件。
  2. 对于找到的每个crontab文件,确定将来下次必须运行每个命令。
  3. 将这些命令放在Franta-Maly事件列表中,并附上相应的时间和“五字段”时间说明符。
  4. 输入主循环:

    • 检查队列头部的任务条目,计算未来必须运行的距离。

    • 睡了一段时间。 在唤醒和验证正确时间后,使用创建它的用户的权限在队列的头部(后台)执行任务。

    • 确定将来的下一次运行此命令并将其放回到该时间值的事件列表中。
  5. 我只对大胆的部分感兴趣。给定当前时间((123 123))和cron条目(2015-11-07 14:48:03)如何确定即将到来的执行点的时间距离(秒)?

0 个答案:

没有答案