Impede o acesso simultâneo a seções de código. Isso pode ser útil quando você tem vários usuários ou processos modificando um recurso compartilhado e quer evitar colisões.
Métodos
| Método | Tipo de retorno | Breve descrição |
|---|---|---|
get | Lock|null | Recebe um bloqueio que impede que qualquer usuário do documento atual execute simultaneamente uma seção de código. |
get | Lock | Recebe um bloqueio que impede que qualquer usuário execute simultaneamente uma seção de código. |
get | Lock | Recebe um bloqueio que impede que o usuário atual execute simultaneamente uma seção de código. |
Documentação detalhada
getDocumentLock()
Recebe um bloqueio que impede que qualquer usuário do documento atual execute simultaneamente uma seção de código. Uma seção de código protegida por um bloqueio de documento pode ser executada simultaneamente por instâncias de script em execução no contexto de documentos diferentes, mas não mais de uma execução para um determinado documento. O bloqueio não é adquirido até que Lock.tryLock(timeoutInMillis) ou Lock.waitLock(timeoutInMillis) seja chamado. Se esse método for chamado fora do contexto de um documento contido (como um script independente ou um app da Web), null será retornado.
Retornar
Lock|null — um bloqueio com escopo para o script e o documento atual ou null se chamado de um script independente ou app da Web.
getScriptLock()
Recebe um bloqueio que impede que qualquer usuário execute simultaneamente uma seção de código. Uma seção de código protegida por um bloqueio de script não pode ser executada simultaneamente, independentemente da identidade do usuário. O bloqueio não é adquirido até que Lock.tryLock(timeoutInMillis) ou Lock.waitLock(timeoutInMillis) seja chamado.
Retornar
Lock: um bloqueio com escopo para o script.
getUserLock()
Recebe um bloqueio que impede que o usuário atual execute simultaneamente uma seção de código. Uma seção de código protegida por um bloqueio de usuário pode ser executada simultaneamente por usuários diferentes, mas não mais de uma execução para um determinado usuário. O bloqueio é "privado" para o usuário. O bloqueio não é adquirido até que Lock.tryLock(timeoutInMillis) ou Lock.waitLock(timeoutInMillis) seja chamado.
Retornar
Lock: um bloqueio com escopo para o script e o usuário atual.