不同用户的脚本锁定Google App Maker

时间:2019-12-12 18:16:12

标签: google-apps-script

我遇到了同时运行2个或更多用户脚本的问题。脚本将数据添加到电子表格,并在Google驱动器中创建文件夹。 我尝试过使用Lockservice,但是没有用。而且我已经创建了自己的“锁定”,可以更改工作表中的值,并且当此“忙碌”状态为true时,脚本不会运行,但是更改太慢。

function thisRunsClient(){
    var lock = LockService.getScriptLock();
    if(lock.hasLock()){return 'END')};
    else{
    lock.tryLock(10000)};
   //rest of code
}

1 个答案:

答案 0 :(得分:1)

我用的是

var lock = LockService.getScriptLock();
    try {
        lock.waitLock(30000); // wait 30 seconds for others' use of the code section and lock to stop and then proceed
    } catch (e) {
        Logger.log('Could not obtain copy lock after 20 seconds.');
        return;
    }
//REST OF CODE

我不确定您在尝试使用haslock做什么,在我看来,如果您获得了锁,则立即结束该函数,这似乎并不是您想要的。