코드 섹션에 대한 동시 액세스를 방지합니다. 이 방법은 여러 사용자 또는 프로세스가 공유 리소스를 수정하는 경우 충돌을 방지하려는 경우에 유용할 수 있습니다.
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
getDocumentLock() | Lock | 현재 문서의 모든 사용자가 코드 섹션을 동시에 실행하지 못하도록 하는 잠금을 가져옵니다. |
getScriptLock() | Lock | 모든 사용자가 코드 섹션을 동시에 실행하지 못하도록 잠그는 잠금 |
getUserLock() | Lock | 현재 사용자가 코드 섹션을 동시에 실행하지 못하도록 하는 잠금을 가져옵니다. |
자세한 문서
getDocumentLock()
현재 문서의 모든 사용자가 코드 섹션을 동시에 실행하지 못하도록 하는 잠금을 가져옵니다. 문서 잠금으로 보호되는 코드 섹션은 여러 문서의 컨텍스트에서 실행되는 스크립트 인스턴스에서 동시에 실행될 수 있지만, 특정 문서당 한 번만 실행될 수 있습니다. 잠금은 Lock.tryLock(timeoutInMillis)
또는 Lock.waitLock(timeoutInMillis)
가 호출될 때까지 실제로 획득되지 않습니다. 이 메서드가 포함된 문서의 컨텍스트 외부에서 호출되면 (예: 독립형 스크립트 또는 웹 앱) null
가 반환됩니다.
Return
Lock
— 스크립트와 현재 문서로 범위가 지정된 잠금 또는 독립형 스크립트나 웹 앱에서 호출된 경우 null
입니다.
getScriptLock()
모든 사용자가 코드 섹션을 동시에 실행하지 못하도록 잠그는 잠금 스크립트 잠금으로 보호되는 코드 섹션은 사용자 ID와 관계없이 동시에 실행할 수 없습니다. 잠금은 Lock.tryLock(timeoutInMillis)
또는 Lock.waitLock(timeoutInMillis)
가 호출될 때까지 실제로 획득되지 않습니다.
Return
Lock
— 스크립트로 범위가 지정된 잠금
getUserLock()
현재 사용자가 코드 섹션을 동시에 실행하지 못하도록 하는 잠금을 가져옵니다. 사용자 잠금으로 보호되는 코드 섹션은 여러 사용자가 동시에 실행할 수 있지만 특정 사용자에 대해 둘 이상만 실행할 수 있습니다. 도어락은 사용자에게 공개됩니다. 잠금은 Lock.tryLock(timeoutInMillis)
또는 Lock.waitLock(timeoutInMillis)
가 호출될 때까지 실제로 획득되지 않습니다.
Return
Lock
— 스크립트와 현재 사용자로 범위가 지정된 잠금