Compartilhar via


Noções básicas sobre o painel de árvore de rastreamento

O painel Árvore de Rastreamento é o foco do Visualizador de Defeitos. Normalmente, você percorre o código no painel Árvore de Rastreamento enquanto observa seu efeito sobre o código no painel Código-Fonte e nos valores no painel Estado .

O painel Árvore de Rastreamento é organizado em uma estrutura hierárquica com uma série de nós expansíveis e recolhidos. A hierarquia indica os elementos de código que fizeram com que outros elementos fossem executados. Esse formato ajuda você a interpretar cada branch de código e exibir e ocultar seções de código facilmente à medida que percorre o rastreamento.

A captura de tela a seguir mostra um exemplo do painel Árvore de Rastreamento .

Captura de tela do painel Árvore de Rastreamento no Visualizador de Defeitos com nós expansíveis e recolhíveis.

Cada elemento de código no painel Árvore de Rastreamento é precedido por seu número de linha no arquivo de origem. Essa numeração ajuda você a encontrar o elemento de código na janela Árvore de Origem e no arquivo de origem.

Algumas linhas de código no painel Código-Fonte correspondem a mais de um elemento no painel Árvore de Rastreamento . Essa situação ocorre quando a linha de código causa mais de uma ação. Por exemplo, se um parâmetro de chamada de função for um IRQL, a linha de código que inclui a chamada de função também poderá incluir uma chamada para localizar o IRQL atual, como:

IoReleaseCancelSpinLock(KeGetCurrentIrql());

Nessa situação, o painel Árvore de Rastreamento incluiria um elemento crítico para a chamada de função KeGetCurrentIrql , algumas chamadas para o modelo do sistema operacional SDV para gerar aleatoriamente um IRQL e, em seguida, uma chamada para IoReleaseCancelSpinLock com o IRQL retornado.