在 Google Apps 脚本中,超时可以通过 try/catch 捕获还是在更高级别发生?



所以我有一些代码通过按钮点击运行。有许多函数,一个接一个地调用。在其中一些中,有对REST服务的调用。有时,整个舍邦运行超过6分钟,从而击中超时屏障,与音障不同,它无法打破。

超时是否可捕获?我可以将最有可能的违规者包裹在尝试/捕获中,并在适当的时候让捕获块进行评估吗?还是我坚持试图让事情变得如此令人难以置信的性能,以至于我从未碰壁?

鉴于您正在调用多个函数,我建议您使用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
}

我在这里写了更多关于这个主题的文章,我使用了.timeBased()触发器;但是,你可以完全使用不同类型的触发器。

最新更新