Impide el acceso simultáneo a secciones de código. Esto puede ser útil cuando tienes varios usuarios o procesos que modifican un recurso compartido y deseas evitar colisiones.
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
getDocumentLock() | Lock | Obtiene un bloqueo que evita que cualquier usuario del documento actual ejecute una sección de código de forma simultánea. |
getScriptLock() | Lock | Obtiene un bloqueo que evita que cualquier usuario ejecute una sección de código de forma simultánea. |
getUserLock() | Lock | Obtiene un bloqueo que impide que el usuario actual ejecute de manera simultánea una sección de código. |
Documentación detallada
getDocumentLock()
Obtiene un bloqueo que evita que cualquier usuario del documento actual ejecute una sección de código de forma simultánea. Una sección de código protegida por un bloqueo de documento se puede ejecutar de manera simultánea por instancias de secuencias de comandos que se ejecutan en el contexto de diferentes documentos, pero no más de una ejecución para un documento determinado. Ten en cuenta que el bloqueo no se adquiere hasta que se llama a Lock.tryLock(timeoutInMillis)
o Lock.waitLock(timeoutInMillis)
. Si se llama a este método fuera del contexto de un documento que lo contiene (como desde una secuencia de comandos independiente o una aplicación web), se muestra null
.
Devolvedor
Lock
: Es un bloqueo que se limita a la secuencia de comandos y el documento actual, o null
si se llama desde una secuencia de comandos independiente o una aplicación web.
getScriptLock()
Obtiene un bloqueo que evita que cualquier usuario ejecute una sección de código de forma simultánea. Una sección de código protegida por un bloqueo de secuencia de comandos no se puede ejecutar de forma simultánea, independientemente de la identidad del usuario. Ten en cuenta que, en realidad, el bloqueo no se adquiere hasta que se llama a Lock.tryLock(timeoutInMillis)
o Lock.waitLock(timeoutInMillis)
.
Devolvedor
Lock
: Es un bloqueo específico de la secuencia de comandos.
getUserLock()
Obtiene un bloqueo que impide que el usuario actual ejecute de manera simultánea una sección de código. Diferentes usuarios pueden ejecutar simultáneamente una sección de código protegida por un bloqueo de usuario, pero no más de una ejecución para un usuario determinado. El bloqueo es "privado" para el usuario. Ten en cuenta que el bloqueo no se adquiere hasta que se llama a Lock.tryLock(timeoutInMillis)
o Lock.waitLock(timeoutInMillis)
.
Devolvedor
Lock
: Es un bloqueo específico para la secuencia de comandos y el usuario actual.