그래서 쿼리가 주위에 "현재 사용자에 대한 동시 실행하여 코드의 섹션에 동시 액세스를 방지하는 잠금을 가져옵니다 getPublicLock()"https://developers.google.com/apps-script/service_lock 그것은한다고 의견 : "코드 부분". LockService.getPublicLock()을 사용하는 코드 섹션이 여러 개있는 경우 본질적으로 독립적 인 잠금입니까? 예를 들어
:
function test1() {
var lock = LockService.getPublicLock();
if (lock.tryLock(10000)) {
// Do some critical stuff
lock.releaseLock();
}
}
function test2() {
var lock = LockService.getPublicLock();
if (lock.tryLock(10000)) {
// Do some critical stuff
lock.releaseLock();
}
}
나는이 하나의 사용자 접근 TEST1 내 스크립트를 동시에 실행 호출() 및 다른 사용자가 액세스 할 TEST2을()이있는 경우, 그들은 모두 성공? 또는이 게시물에서 알 수 있듯이 http://googleappsdeveloper.blogspot.co.uk/2011/10/concurrency-and-google-apps-script.html은 단순히 스크립트 수준의 잠금 장치입니까? 따라서이 시나리오에서는 test1() 또는 test2() 중 하나만 성공하고 둘 모두는 성공하지 못합니다.
진정으로 문서가 언급되어 있고 둘 다 성공하면 '코드 섹션'을 나타내는 것은 무엇입니까 ?? LockService.getPublicLock()이 나타나는 줄 번호입니까, 아니면 주변 함수입니까?
이 답변이나 시나리오는 여전히 정확한 것입니까? 별도의 잠금 인스턴스가 별도의 함수로 사용될 수 있는지 확인하려고합니다. ('.getPublicLock()'이 더 이상 존재하지 않는 것처럼 보이지만,'getScriptLock()'은 그렇습니다). 그래서'var lock_01 = LockService.getScriptLock();'은'function_01()'에서 사용되지만'var lock_02 = LockService.getScriptLock();'은'function_02()'에서 사용될 수 있습니까? – user1063287