我有Google表格的谷歌应用程序脚本。最近,当我的函数在6分钟内将数据插入电子表格时,我遇到了“脚本运行时”限制。我的模态窗口刚刚挂起,在Dev Console中我得到了“超过最长执行时间”。
经过一番研究后,我想到了如何重新实现我的功能,因此它会分批执行,不太可能达到极限。
但是,在这一点上,我想在我的脚本中添加一些逻辑,这些逻辑可以集中捕获这个限制和所有其他可能,并且只是向用户显示一些错误消息,而不仅仅是挂起并且什么都不做。
有没有办法实现这一目标?
答案 0 :(得分:4)
我建议使用ScriptApp.newTrigger
创建一个触发器,可以通过引入另一个函数来触发该函数,该函数检查脚本是否超过了预定的执行时间(如果最大值为6,则可以将其设置为为了安全起见,请设为5。
引用类似的内容-
// var today = new Date();
// 'today' is declard in the original script
function isTimeUp(today) {
var now = new Date();
return now.getTime() - today.getTime() > 30000;
// 30000 = 30 seconds; this is the threshold limit
// you are free to setup your own threshold limit
}
关于这个主题here,我已经使用.timeBased()
触发器进行了更多介绍;但是,您可能会完全使用其他类型的触发器。