有人告诉我使用 crontab 表达式让我的计划触发器每 3 分钟运行一次,但是,我注意到它实际上并不是每 5 分钟运行一次,它所做的是它运行一个进程 3 分钟然后它停止即使该过程不完整。
我需要触发器每 3 分钟运行一次,但如果它处于进程中间,则完成当前进程。你能建议吗?
我注意到在计划触发器中你有“启动实例”和“停止实例”,目前它们都是错误的。我的猜测是我需要对这些做些什么?
有人告诉我使用 crontab 表达式让我的计划触发器每 3 分钟运行一次,但是,我注意到它实际上并不是每 5 分钟运行一次,它所做的是它运行一个进程 3 分钟然后它停止即使该过程不完整。
我需要触发器每 3 分钟运行一次,但如果它处于进程中间,则完成当前进程。你能建议吗?
我注意到在计划触发器中你有“启动实例”和“停止实例”,目前它们都是错误的。我的猜测是我需要对这些做些什么?
触发器永远不会中断脚本执行。
特殊变量timeout将解决您的问题。根据手册超时特殊变量:
定义机器人进程的最大持续时间(以毫秒为单位),在此之后进程终止;默认值为 180000(3 分钟)。
这意味着如果脚本timeout
的变量值保持默认值,脚本将在 3 分钟后停止。
在脚本开头添加以下代码行,以防止在 3 分钟后发生这种情况并增加其最大机器人进程持续时间。
♥timeout = 1800000
顺便说一句,如果您已将触发器设置为每 3 分钟启动一次脚本,并且脚本的持续时间为 4 分钟,则该脚本将在下一次自动启动,因为它晚了 1 分钟,它会创建一个队列要执行的脚本。