Técnico em Tecnologia da Informação II - Área: Administração de Banco de Dados
Assinale a opção correta em relação a deadlock.
ADeadlocks só ocorrem em bancos de dados distribuídos com múltiplos servidores que concorrem pelos mesmos recursos.
BDeadlock é uma falha temporária causada por perda de conexão com o banco de dados, sendo resolvida automaticamente com o commit da transação.
CDeadlocks são causados por falhas de hardware e não estão relacionados à lógica de bloqueios entre transações.
DOcorre Deadlock quando duas ou mais transações acessam os mesmos dados simultaneamente em modo leitura, impedindo o progresso de ambas.
EUm deadlock ocorre quando transações entram em espera circular por recursos que nunca serão liberados, sendo possível evitar a situação por meio de escalonamento otimista.
Revelar gabarito e comentário▾
GabaritoE — Um deadlock ocorre quando transações entram em espera circular por recursos que nunca serão liberados, sendo possível evitar a situação por meio de escalonamento otimista.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Deadlock
Gabarito: letra E. Deadlock é uma situação de espera circular entre processos/transações, onde cada um aguarda por um recurso retido por outro, formando um ciclo que nunca se resolve. A alternativa E descreve corretamente esse cenário e menciona o escalonamento otimista como uma técnica para evitá-lo.
Deadlock: Definição (Espera circular, Recursos nunca liberados, Impasse permanente); Condições (Coffman) (Exclusão mútua, Posse e espera, Não preempção, Espera circular); Prevenção (Escalonamento otimista, Ordenação de recursos, Timeout)
Alternativa A — ❌ Incorreta
Afirma que deadlocks só ocorrem em bancos de dados distribuídos com múltiplos servidores. Na verdade, deadlocks podem ocorrer em qualquer sistema com recursos compartilhados, incluindo sistemas operacionais e bancos de dados centralizados. A afirmação é restritiva demais.
Alternativa B — ❌ Incorreta
Deadlock não é uma falha temporária causada por perda de conexão, e não é resolvido com commit da transação. O deadlock é um impasse permanente (a menos que haja intervenção) e está relacionado à disputa por recursos, não a problemas de rede.
Alternativa C — ❌ Incorreta
Deadlocks não são causados por falhas de hardware; são decorrentes da lógica de alocação de recursos e bloqueios entre processos/transações. Falhas de hardware podem levar a outros tipos de erros, mas não deadlock.
Alternativa D — ❌ Incorreta
A situação descrita (acesso em modo leitura) não gera deadlock, pois leituras simultâneas não bloqueiam umas às outras. O deadlock requer bloqueios exclusivos ou ao menos conflitantes, e a espera circular.
Alternativa E — ✅ Correta ⟵ GABARITO
A definição está correta: deadlock é uma espera circular por recursos que nunca serão liberados. Quanto à prevenção, o escalonamento otimista é uma técnica de controle de concorrência que pode evitar deadlocks ao não utilizar bloqueios tradicionais, detectando conflitos apenas no momento do commit.