Técnica de duas fases e tipos de bloqueio
Gabarito: letra D (compartilhado). O bloqueio que apresenta os estados de read_lock, write_lock e unlock é o bloqueio compartilhado (também chamado de bloqueio de múltiplos modos), que permite o compartilhamento de leitura e a exclusividade de escrita – base do protocolo de bloqueio em duas fases (2PL).
A banca testa a distinção entre os tipos de bloqueio usados em controle de concorrência. O bloqueio binário tem apenas um estado (bloqueado/desbloqueado), sem diferenciar leitura e escrita. Já o bloqueio compartilhado oferece dois modos (read_lock e write_lock) e a operação de unlock, exatamente o que descreve o enunciado.
Alternativa A — ❌ Incorreta
"Bloqueio de protocolo" é um termo genérico e não designa um tipo específico de bloqueio com os estados mencionados. O protocolo é a técnica (2PL) que utiliza o bloqueio compartilhado, mas não é o bloqueio em si.
Alternativa B — ❌ Incorreta
O bloqueio binário possui apenas dois estados: bloqueado ou desbloqueado, sem distinguir read_lock e write_lock. Portanto, não atende aos estados exigidos.
Alternativa C — ❌ Incorreta
O bloqueio de conversão refere-se à operação de upgrade (de read_lock para write_lock) ou downgrade, e não é um tipo de bloqueio que possua por si só os estados de read_lock, write_lock e unlock.
Alternativa D — ✅ Correta ⟵ GABARITO
O bloqueio compartilhado (também chamado de bloqueio de leitura/escrita ou bloqueio de múltiplos modos) é o que oferece os modos read_lock (compartilhado), write_lock (exclusivo) e unlock. Ele é o mecanismo central do protocolo de bloqueio em duas fases (2PL), conforme descrito na literatura: uma transação pode solicitar read_lock para leitura, write_lock para escrita e unlock para liberar o item. Exatamente os estados mencionados no enunciado.
Alternativa E — ❌ Incorreta
"Bloqueio unitário" não é um termo técnico padrão em controle de concorrência. Não corresponde a um tipo de bloqueio que possua os estados de read_lock, write_lock e unlock.
Conclusão: O bloqueio que apresenta os três estados (read_lock, write_lock e unlock) é o bloqueio compartilhado, também conhecido como bloqueio de múltiplos modos. Portanto, gabarito letra D.