Compatibilidad de tipo de bloqueo

La compatibilidad de bloqueo se convierte en un problema cuando una aplicación mantiene un bloqueo sobre un objeto y otra aplicación solicita un bloqueo sobre el mismo objeto. Cuando las dos modalidades de bloqueo son compatibles, se puede otorgar la solicitud de un segundo bloqueo sobre el objeto.

Si la modalidad de bloqueo del bloqueo solicitado no es compatible con el bloqueo que ya está retenido, no se puede otorgar la solicitud de bloqueo. En su lugar, la solicitud debe esperar hasta que la primera aplicación libere su bloqueo y se liberen todos los demás bloqueos incompatibles existentes.

La Tabla 1 muestra qué tipos de bloqueo son compatibles (indicados por un ) y qué tipos no lo son (indicados por un no). Tenga en cuenta que se puede producir un tiempo de espera excedido cuando un solicitante está esperando un bloqueo.
Tabla 1. Compatibilidad de tipo de bloqueo
  Estado de recurso retenido
Estado que se está solicitando Ninguno IN IS NS S IX SIX U X Z NW
Ninguno
IN (Sin intención) No
IS (INTENT SHARE) No No No
NS (Compartir exploración) No No No No
S (SHARE) No No No No No
IX (INTENT EXCLUSIVE) No No No No No No No
SIX (SHARE con INTENT EXCLUSIVE) No No No No No No No No
u (Actualizar) No No No No No No
X (EXCLUSIVE) No No No No No No No No No
Z (superexclusivo) No No No No No No No No No No
NW (siguiente clave débil exclusiva) No No No No No No No No