Javascript:如何检查 fct 是否为 运行ning,如果不是,则使其成为 运行?

Javascript: How can I check if a fct is running and, if not, make it run?

我是 运行 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();

您可能更喜欢使用 EventEmitter 和类似的东西来避免 setInterval() 但这基本上对所有事情都有效。