Partilhar via


Criar um mapa visual da pilha de chamadas durante a depuração de código (C#, Visual Basic, C++, JavaScript)

Crie um mapa de código para rastrear visualmente a stack de chamadas durante a depuração. Você pode fazer anotações no mapa para acompanhar o que o código está fazendo, para que você possa se concentrar em encontrar bugs.

Para obter detalhes sobre comandos e ações que você pode usar com mapas de código, consulte Procurar e reorganizar mapas de código.

Importante

Você pode criar mapas de código somente no Visual Studio Enterprise edition.

Aqui está uma rápida olhada em um mapa de código:

Depuração com pilhas de chamadas em mapas de código

Mapeie a pilha de chamadas

  1. Em um projeto Visual Studio Enterprise C#, Visual Basic, C++ ou JavaScript, inicie a depuração selecionando Depurar>Iniciar Depuração ou pressionando F5.

  2. Depois que seu aplicativo entrar no modo de interrupção ou você entrar em uma função, selecione Depurar>Mapa de Código ou pressione Ctrl+Shift+`.

    A pilha de chamadas atual aparece em laranja em um novo mapa de código:

    Veja a pilha de chamadas no mapa de código

O mapa de código é atualizado automaticamente à medida que você continua a depuração. Alterar itens de mapa ou layout não afeta o código de forma alguma. Sinta-se à vontade para renomear, mover ou remover qualquer coisa no mapa.

Para obter mais informações sobre um item, passe o rato sobre ele e veja a tooltip. Você também pode selecionar Legenda na barra de ferramentas para saber o que cada ícone significa.

Legenda do mapa de código

Observação

A mensagem O diagrama pode ser baseado em uma versão mais antiga do código na parte superior do mapa de código significa que o código pode ter mudado depois que você atualizou o mapa pela última vez. Por exemplo, uma chamada no mapa pode não existir mais no código. Feche a mensagem e tente reconstruir a solução antes de atualizar o mapa novamente.

Mapear código externo

Por padrão, apenas seu próprio código aparece no mapa. Para ver o código externo no mapa:

  • Clique com o botão direito do mouse na janela Pilha de chamadas e selecione Mostrar código externo:

    Mostrar código externo usando a janela Pilha de Chamadas

  • Ou, desmarque a caixa de seleção Ativar Apenas Meu Código no Visual Studio:

    Esta opção está disponível no painel Ferramentas (ou Depuração) >Opções na seção>>Geral:

    Captura de tela que mostra como selecionar a opção Habilitar apenas meu código no Visual Studio.

    Esta opção está disponível na caixa de diálogo Ferramentas (ou Depuração) >Opções na seção Depuração>Geral:

    Mostrar código externo usando a caixa de diálogo Opções

Controlar o layout do mapa

Alterar o layout do mapa não afeta o código de forma alguma.

Para controlar o layout do mapa, selecione o menu Layout na barra de ferramentas do mapa.

No menu Layout , você pode:

  • Altere o layout padrão.
  • Parem de reorganizar o mapa automaticamente, desmarcando Verificação automática da disposição durante a depuração.
  • Reorganize o mapa o mínimo possível ao adicionar itens, desmarcando Layout incremental.

Faça anotações sobre o código

Você pode adicionar comentários para acompanhar o que está acontecendo no código.

Para adicionar um comentário, clique com o botão direito do rato no mapa de código e selecione Editar>Novo Comentário e, em seguida, escreva o comentário.

Para adicionar uma nova linha a um comentário, prima Shift+Enter.

Adicionar comentário ao stack de chamadas no mapa de código

Atualize o mapa com a próxima pilha de chamadas

À medida que executa a sua aplicação até ao próximo ponto de interrupção ou entra numa função, o mapa adiciona automaticamente novas pilhas de chamadas.

Atualize o mapa de código com a próxima pilha de chamadas

Para impedir que o mapa adicione novas pilhas de chamadas automaticamente, selecione Mostrar pilha de chamadas no mapa de código automaticamente na barra de ferramentas do mapa de código. O mapa continua a destacar as pilhas de chamadas existentes. Para adicionar manualmente a pilha de chamadas atual ao mapa, pressione Ctrl+Shift+`.

Adicionar código relacionado ao mapa

Agora que você tem um mapa, em C# ou Visual Basic, você pode adicionar itens como campos, propriedades e outros métodos, para controlar o que está acontecendo no código.

Para ir para a definição de um método no código, clique duas vezes no método no mapa ou selecione-o e pressione F12 ou clique com o botão direito do mouse nele e selecione Ir para definição.

Ir para definição de código para um método no mapa de código

Para adicionar itens que você deseja rastrear ao mapa, clique com o botão direito do mouse em um método e selecione os itens que deseja rastrear. Os itens adicionados mais recentemente aparecem em verde.

Campos relacionados a um método no mapa de código da pilha de chamadas

Observação

Por padrão, adicionar itens ao mapa também adiciona os nós do grupo pai, como a classe, o namespace e o assembly. Você pode desativar e ativar esse recurso selecionando o botão Incluir pais na barra de ferramentas do mapa de código ou pressionando Ctrl enquanto adiciona itens.

Mostrar campos em um método no mapa de código da pilha de chamadas

Continue a construir o mapa para ver mais código.

Veja os métodos que usam um campo: mapa de código da pilha de chamadas

Métodos que usam um campo no mapa de código da pilha de chamadas

Encontre bugs usando o mapa

Visualizar seu código pode ajudá-lo a encontrar bugs mais rapidamente. Por exemplo, suponha que você esteja investigando um bug em um aplicativo de desenho. Quando você traça uma linha e tenta desfazê-la, nada acontece até que você desenhe outra linha.

Assim, você define pontos de interrupção nos métodos clear, undo e Repaint, inicia a depuração e cria um mapa como este:

Adicionar outra pilha de chamadas ao mapa de código

Você percebe que todos os gestos do usuário no mapa chamam Repaint, exceto undo. Isso pode explicar por que undo não funciona imediatamente.

Depois de corrigir o bug e continuar a executar o aplicativo, o mapa adiciona a nova chamada de undo para Repaint:

Adicionar nova chamada de método para pilha de chamadas no mapa de código

Partilhar o mapa com outras pessoas

Você pode exportar um mapa, enviá-lo para outras pessoas com o Microsoft Outlook, salvá-lo em sua solução e verificá-lo no controle de versão.

Para compartilhar ou salvar o mapa, use Compartilhar na barra de ferramentas do mapa de código.

Compartilhar mapa de código de pilha de chamadas com outras pessoas