【发布时间】:2013-10-14 18:26:08
【问题描述】:
我在 cron 作业中有一个问题,我创建了一个作业来每分钟运行一个页面。
如果此页面在这一分钟内没有完全完成它的工作(没有完全执行),那么
- cron 作业命令会从头开始再次运行此页面吗?
- 还是会再次运行此页面但允许第一个页面完成?
- 还是会等待页面完成并执行命令?
- 还是会做其他事情????
【问题讨论】:
-
作业在后台运行,因此在运行下一个作业之前不必完成作业。
我在 cron 作业中有一个问题,我创建了一个作业来每分钟运行一个页面。
如果此页面在这一分钟内没有完全完成它的工作(没有完全执行),那么
【问题讨论】:
每个 cron 作业都在单独的子进程中独立运行,因此无论其他作业是否正在运行,cron 作业都会运行。
因此,如果您的脚本运行时间超过一分钟,并且您已安排它每分钟运行一次,则会产生意想不到的后果,因为两个进程或 n+1 进程的脚本执行时间在 [n, n+1) 范围内分钟,现在将在不同的执行阶段运行。
这对于 cron 作业的执行时间的任何重叠都是正确的。
【讨论】: