Um erro de deadlock é uma situação em que um processo ou programa não pode ser iniciado porque o recurso de que ele precisa está sendo usado por outro processo ou programa.
Em outras palavras, os processos ou programas que já estão utilizando os respectivos recursos estão impedindo que outros processos os acessem. A única solução para resolver esse problema é liberar os recursos.
Os erros de deadlock são específicos para sistemas operacionais onde vários processos requerem acesso aos mesmos recursos. Às vezes, dois ou mais processos podem entrar em conflito com o mesmo recurso.
Quando um processo não consegue acessar os recursos de que precisa para ser executado corretamente, ele entra automaticamente em um estado de espera. Se os recursos permanecerem bloqueados, os processos não serão iniciados. No entanto, a duração do estado de espera costuma ser limitada. Se os recursos do sistema permanecerem indisponíveis, a espera termina e o processo que falhou ao iniciar emite uma mensagem de erro.
Uma Analogia Simples
Imagine dois carros vindo em direção um ao outro em uma estrada de faixa única. Os carros não podem se mover uma vez que estão na frente um do outro. Algo semelhante acontece quando um processo está aguardando um recurso adquirido por outro programa.
Erros de deadlock no Windows 10
Aqui estão alguns exemplos rápidos de erros de deadlock no Windows 10:
- Outro programa está usando este arquivo.
- O documento está sendo usado por outro aplicativo e não pode ser acessado.
- O arquivo está sendo usado por outro programa / processo / usuário.
Alguns de vocês podem já estar familiarizados com esses erros. Também cobrimos alguns deles aqui no Technipages:
- Corrigir este dispositivo está esperando outro dispositivo para iniciar
- Windows 10: outro programa está usando este arquivo
Como você pode ver, todos esses exemplos de erro indicam que outro programa está usando o arquivo (o recurso, se preferir). Como resultado, se um segundo programa solicitar acesso a esse arquivo, a permissão será negada.
⇒ Você sabia disso?
Windows 10 usa Verificador de motorista para detectar deadlocks. A Microsoft também oferece um utilitário chamado Verificador de aplicativo que está incluído no Windows Software Development Kit. A ferramenta analisa programas enquanto eles estão em execução para detectar possíveis falhas de projeto ou execução que podem causar deadlocks.
Como evitar erros de deadlock
Duas das maneiras mais simples de evitar erros de deadlock consistem em:
- Adicionando várias instâncias do mesmo tipo de recurso.
- Permitindo que os processos compartilhem recursos com outros processos.
No entanto, essas soluções nem sempre são viáveis em certas configurações de computador.