我遇到了同时运行2个或更多用户脚本的问题。脚本将数据添加到电子表格,并在Google驱动器中创建文件夹。 我尝试过使用Lockservice,但是没有用。而且我已经创建了自己的“锁定”,可以更改工作表中的值,并且当此“忙碌”状态为true时,脚本不会运行,但是更改太慢。
function thisRunsClient(){
var lock = LockService.getScriptLock();
if(lock.hasLock()){return 'END')};
else{
lock.tryLock(10000)};
//rest of code
}
答案 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做什么,在我看来,如果您获得了锁,则立即结束该函数,这似乎并不是您想要的。