Ciência da Computação

Qual transação segue o protocolo de bloqueio em duas fases com permissão para conversão de bloqueio?

  • A.

    READ_LOCK(X)

    READ_LOCK(Y)

    READ(Y)

    READ(X)

    Z©X+Y

    UNLOCK(Y)

    UNLOCK(X)

    WRITE_LOCK(Z)

    WRITE(Z)

    UNLOCK(Z)

  • B.

    READ_LOCK(X)

    READ_LOCK(Y)

    READ_LOCK(Z)

    READ(X)

    READ(Y)

    READ(Z)

    UNLOCK(X)

    UNLOCK(Y)

    WRITE_LOCK(Z)

    Z©X+Y

    WRITE(Z)

    UNLOCK(Z)

  • C.

    READ_LOCK(X)

    READ(X)

    UNLOCK(X)

    READ_LOCK(Y)

    READ(Y)

    UNLOCK(Y)

    WRITE_LOCK(Z)

    Z©X+Y

    WRITE(Z)

    UNLOCK(Z)

  • D.

    READ_LOCK(X)

    READ_LOCK(Y)

    READ(X)

    READ(Y)

    READ_LOCK(Z)

    READ(Z)

    UNLOCK(Y)

    UNLOCK(X)

    WRITE_LOCK(Z)

    Z©X+Y

    WRITE(Z)

    UNLOCK(Z)

  • E.

    READ_LOCK(X)

    READ(X)

    READ_LOCK(Y)

    READ(Y)

    READ_LOCK(Z)

    READ(Z)

    WRITE_LOCK(Z)

    Z©X+Y

    UNLOCK(Y)

    UNLOCK(X)

    UNLOCK(Z)