我正在Google Apps脚本中运行一个函数,有时它超时并停止运行。我想添加一些东西(连续地或每x秒检查一次),以检查我的函数是否正在运行,如果没有运行,请启动它。最好的解决方案是什么?

基本上,我正在寻找可以做到这一点的东西:

if(!functionXIsRunning){run functionX}


谢谢!

最佳答案

我认为您需要这样的东西:

var isRunning = false;
function functionX(){
  //Do something
  isRunning = false; //After function is finished, set isRunning to false.
}

function runFunctionX(){
  if(!isRunning){
    functionX();
    isRunning = !isRunning //Sets isRunning to it's opposite, that is true
  }
}

ScriptApp.newTrigger('runFunctionX')
  .timeBased()
  .everyMinutes(5) //Change as necessary
  .create();


您可能更喜欢使用EventEmitters之类的东西来避免setInterval(),但这对于基本上所有东西都适用。

09-19 03:33