Como posso visualizar os threads ativos de um programa em execução?

27

Eu sei que posso ver todos os processos em execução no Gerenciador de Tarefas. Mas como posso ver os threads únicos que são executados dentro desses processos?

Der Hochstapler
fonte

Respostas:

36
  1. Obtenha o Process Explorer .

  2. Ative Mostrar detalhes de todos os processos no menu Arquivo :

    insira a descrição da imagem aqui

  3. No painel principal, selecione o processo em que você está interessado:

    insira a descrição da imagem aqui

  4. Abra o menu de contexto (clique com o botão direito do mouse) para o processo selecionado e clique em Propriedades :

    insira a descrição da imagem aqui

  5. Na guia Threads , você poderá ver uma lista dos threads em execução dentro desse processo:

    insira a descrição da imagem aqui

Símbolos

Se a sua solução de problemas exigir mais detalhes, geralmente é muito útil carregar símbolos de depuração no Process Explorer. É assim:

  1. Se você ainda não possui um depurador do Windows instalado, precisará instalar as Ferramentas de Depuração para Windows primeiro.

  2. No Process Explorer, abra Configurar símbolos ... no menu Opções :

    insira a descrição da imagem aqui

  3. Se você tiver as Ferramentas de Depuração (ou outro depurador do Windows) instaladas, o Process Explorer encontrará automaticamente o dbghelp.dllarquivo. Caso contrário, defina o caminho correto aqui.

    insira a descrição da imagem aqui

    O caminho dos símbolos deve se parecer com:

    SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols
    

    A única parte que você deseja ajustar é C:\Symbols. É nesse local que os símbolos de depuração serão armazenados em cache.

Der Hochstapler
fonte
3
Omg, por que não o construiu no gerenciador de tarefas, é uma característica óbvia ...
Hi-Angel
11
... recurso óbvio para desenvolvedores: o Windows é para usuários no nível da avó, portanto é melhor mantê-lo oculto.
Campa