Condividi tramite


Informazioni sul riquadro Albero di traccia

Il riquadro Albero di traccia è lo stato attivo del Visualizzatore difetti. In genere, si esegue il codice nel riquadro Albero di traccia , osservandone l'effetto sul codice nel riquadro Codice sorgente e sui valori nel riquadro Stato .

Il riquadro Albero di traccia è organizzato in una struttura gerarchica con una serie di nodi espandibili e comprimibili. La gerarchia indica gli elementi di codice che hanno causato l'esecuzione di altri elementi. Questo formato consente di interpretare ogni ramo di codice e di visualizzare e nascondere facilmente le sezioni di codice durante l'esecuzione della traccia.

La schermata seguente mostra un esempio di riquadro Albero di traccia .

Screenshot del riquadro Albero di traccia nel Visualizzatore difetti con nodi espandibili e comprimibili.

Ogni elemento di codice nel riquadro Albero di traccia è preceduto dal numero di riga nel file di origine. Questa numerazione consente di trovare l'elemento di codice nella finestra Albero di origine e nel file di origine.

Alcune righe di codice nel riquadro Codice sorgente corrispondono a più di un elemento nel riquadro Albero di traccia . Questa situazione si verifica quando la riga di codice causa più di un'azione. Ad esempio, se un parametro di chiamata di funzione è un IRQL, la riga di codice che include la chiamata di funzione potrebbe includere anche una chiamata per trovare l'IRQL corrente, ad esempio:

IoReleaseCancelSpinLock(KeGetCurrentIrql());

In questo caso, il riquadro Albero di traccia include un elemento critico per la chiamata di funzione KeGetCurrentIrql , alcune chiamate al modello del sistema operativo SDV per generare in modo casuale un IRQL e quindi una chiamata a IoReleaseCancelSpinLock con l'IRQL restituito.