Como o Windows sabe um programa não está respondendo?
Qualquer pessoa que tenha usado o Windows viu uma mensagem ocasional do sistema informando que um programa não está respondendo, mas exatamente como o Windows sabe disso? O post de perguntas e respostas do SuperUser de hoje tem a resposta para a pergunta de um leitor confuso.
A sessão de perguntas e respostas de hoje nos é oferecida por cortesia do SuperUser - uma subdivisão do Stack Exchange, um agrupamento de sites de perguntas e respostas conduzido pela comunidade..
Foto cedida por Matthias Ripp (Flickr).
A questão
Leitor SuperUser ArunPrasanth quer saber como o Windows sabe que um programa não está respondendo:
Como o Windows sabe se um programa não está respondendo? Ele pesquisa constantemente todos os aplicativos em execução?
Como o Windows sabe se os programas não estão respondendo?
A resposta
O usuário do SuperUser, ratchet freak, tem a resposta para nós:
Um aplicativo obtém eventos de uma fila fornecida pelo Windows. Se o aplicativo não pesquisar a fila de eventos por um tempo (5 segundos), como fazer um cálculo longo, por exemplo, o Windows presumirá que o aplicativo está interrompido e alerta o usuário.
Para evitar isso, os aplicativos devem enviar cálculos dispendiosos para segmentos de trabalho ou dividir o processamento e garantir que a fila seja consultada regularmente.
Tem algo a acrescentar à explicação? Som desligado nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui.