Middle+
O que é Deadlock e Livelock? Qual é a diferença?
sobes.tech IA
Resposta da IA
Deadlock (interbloqueio) — situação em que dois ou mais processos bloqueiam-se mutuamente para sempre, cada um esperando a liberação de um recurso ocupado pelo outro processo. Por exemplo, o processo A mantém o recurso 1 e espera pelo recurso 2, enquanto o processo B mantém o recurso 2 e espera pelo recurso 1.
Livelock (bloqueio vivo) — situação em que os processos não ficam bloqueados, mas mudam constantemente seu estado em resposta um ao outro, sem avançar. Por exemplo, dois processos cedem recursos continuamente um ao outro, mas nenhum consegue continuar.
Diferença:
- Deadlock — processos esperam um pelo outro e não mudam de estado.
- Livelock — processos estão ativos e mudam de estado, mas não há progresso.