Se um determinado item de dado está bloqueado para gravação (permitindo a leitura) e outras transações só efetuam leituras, então essas transações não constarão na lista de transações pendentes. Nesse caso, esta lista só contém transações que necessitam de gravação.

Veja o resumo a seguir:

Vejamos um exemplo prático:

  1. Uma transação T1 está alterando o nome de um aluno na tabela ALUNO. Essa transação t1 precisa bloquear o item de dado “nome do aluno” até que a alteração do dado seja concluída. Nesse momento, nenhuma outra transação poderá ler o nome do aluno ou mesmo alterá-lo. Neste caso, estamos tratando de um bloqueio de leitura e gravação. Ao terminar de executar a transação T1, o bloqueio será desfeito e outras transações poderão ocorrer.
  2. Agora, uma transação T2 está lendo o nome de um outro aluno na tabela ALUNO. Enquanto essa transação T2 não for concluída, nenhuma outra transação poderá alterar o nome do aluno, entretanto, outras transações podem também ler o nome do aluno, pois, neste caso, o bloqueio desejado é apenas o de gravação.
Copyright © 2016 AIEC.