所以我尝试每小时运行一个函数。此函数的要点是更新时间表以查看当前时间以及该时间点正在发生的事件。
我已经在小时计时器上设置了时间驱动的项目触发器,但是,它运行时似乎不一致,有时是每小时前 5 分钟,有时是每小时后 10 分钟。
我希望该函数在整点运行,有办法做到这一点吗?
最佳答案
这很有可能:您想要做的是在运行结束时设置下一次运行的触发器。
因此,您将手动运行该函数一次,并在最后插入以下代码段:
ScriptApp.newTrigger("FUNCTION HERE")
.timeBased()
.at(new Date(new Date().setHours(new Date().getHours()+1,0,0,0))
.create();
但是,因为从某些方面来说,这是一个脆弱的触发器链(如果其中一个失败,它将不会在下一小时继续运行),因此您有几个选择。
我会创建一个每天运行的故障安全功能,并确保上述功能正常工作(如果没有,请再次启动链)。我还将这个函数中的其他内容包装在 try catch block 中(滚动到页面底部:无论如何,您都应该对所有函数执行此操作,始终)并将上述代码添加到其中,以便即使您的函数失败,它下次仍会运行(或将其放入函数的开头)。
关于timer - 安排一个函数每小时整点运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24768344/