Visualizza attività e i thread nella finestra Stack in parallelo (C#, Visual Basic, C++)View threads and tasks in the Parallel Stacks window (C#, Visual Basic, C++)

Il stack in parallelo finestra è utile per il debug di applicazioni multithreading.The Parallel Stacks window is useful for debugging multithreaded applications. Include diverse visualizzazioni:It has several views:

Usare la finestra Stack in paralleloUse the Parallel Stacks window

Per aprire la stack in parallelo finestra, è necessario essere in una sessione di debug.To open the Parallel Stacks window, you must be in a debugging session. Selezionare Debug > Windows > stack in parallelo.Select Debug > Windows > Parallel Stacks.

Controlli della barra degli strumentiToolbar controls

Il stack in parallelo finestra dispone di controlli della barra degli strumenti seguenti:The Parallel Stacks window has the following toolbar controls:

Barra degli strumenti nella finestra Stack in paralleloToolbar in Parallel Stacks window

IconaIcon ControlControl DescrizioneDescription
Casella combinata thread/attivitàThreads/Tasks combo box Thread/attività pole se seznamemThreads/Tasks combo box Consente di passare dalla visualizzazione degli stack di chiamate dei thread alla visualizzazione degli stack di chiamate delle attività e viceversa.Switches the view between call stacks of threads and call stacks of tasks. Per altre informazioni, vedere Visualizzazione Attività e Visualizzazione Thread.For more information, see Tasks view and Threads view.
Mostra icona solo con contrassegnoShow Only Flagged icon Mostra solo con contrassegnoShow Only Flagged Mostra gli stack di chiamate per i thread contrassegnati in altre finestre del debugger, ad esempio la thread GPU finestra e il espressioni di controllo parallela finestra.Shows call stacks only for the threads that are flagged in other debugger windows, such as the GPU Threads window and the Parallel Watch window.
Icona Attiva/disattiva visualizzazione metodoToggle Method View icon Attiva/Disattiva visualizzazione metodoToggle Method View Passa tra visualizzazioni dello stack di chiamate e visualizzazione metodo.Switches between call stack views and Method View. Per altre informazioni, vedere Visualizzazione metodo.For more information, see Method View.
Scorrimento automatico a icona correnteAuto Scroll to Current icon Scorrimento automatico a stack frame correnteAuto Scroll To Current Stack Frame Il grafico scorre automaticamente in modo che lo stack frame corrente è nella visualizzazione.Autoscrolls the graph so that the current stack frame is in view. Questa funzionalità è utile quando si modifica lo stack frame corrente da altre finestre o quando si raggiunge un nuovo punto di interruzione in grafi di grandi dimensioni.This feature is useful when you change the current stack frame from other windows, or when you hit a new breakpoint in large graphs.
Icona Zoom attiva/disattivaToggle Zoom icon Attiva/Disattiva controllo zoomToggle Zoom Control Mostra o nasconde il controllo zoom a sinistra della finestra.Shows or hides the zoom control at the left of the window.

Indipendentemente dalla visibilità del controllo zoom, è inoltre possibile ingrandire premendo Ctrl e l'attivazione della rotellina del mouse oppure premendo Ctrl+MAIUSC + + per eseguire lo zoom avanti e Ctrl+MAIUSC + - Per eseguire lo zoom indietro.Regardless of the visibility of the zoom control, you can also zoom by pressing Ctrl and turning the mouse wheel, or by pressing Ctrl+Shift++ to zoom in and Ctrl+Shift+- to zoom out.

Icone di stack FrameStack Frame icons

Le icone seguenti forniscono informazioni sui frame dello stack attivi e correnti in tutte le visualizzazioni:The following icons provide information about the active and current stack frames in all views:

IconaIcon DescrizioneDescription
Freccia gialla Indica la posizione corrente (stack frame attivo) del thread corrente.Indicates the current location (active stack frame) of the current thread.
Icona thread Indica la posizione corrente (stack frame attivo) di un thread non correnti.Indicates the current location (active stack frame) of a non-current thread.
Freccia verde Indica lo stack frame corrente (il contesto di debug corrente).Indicates the current stack frame (the current debugger context). Il nome del metodo è in grassetto ovunque sia presente.The method name is bold wherever it appears.

Voci del menu di scelta rapidaContext menu items

Sono disponibili le seguenti voci di menu di scelta rapida facendo clic su un metodo in thread visualizzazione oppure attività visualizzazione.The following shortcut menu items are available when you right-click a method in Threads view or Tasks view. Gli ultimi sei elementi sono uguali a quelle di finestra Stack di chiamate.The last six items are the same as in the Call Stack window.

Menu di scelta rapida nella finestra Stack in paralleloShortcut menu in Parallel Stacks window

Voce di menuMenu item DescrizioneDescription
FlagFlag Contrassegna l'elemento selezionato.Flags the selected item.
Rimuovi flagUnflag Rimuove il flag dall'elemento selezionato.Unflags the selected item.
BloccaFreeze Blocca l'elemento selezionato.Freezes the selected item.
SbloccaThaw Sblocca l'elemento selezionato.Thaws the selected item.
Passa al frameSwitch To Frame Stesso come il menu corrispondente comando di Stack di chiamate finestra.Same as the corresponding menu command in the Call Stack window. Tuttavia, nelle stack in parallelo finestra, potrebbe essere un metodo in frame diversi.However, in the Parallel Stacks window, one method may be in several frames. È possibile selezionare il fotogramma desiderato nel sottomenu per questo elemento.You can select the frame you want in the submenu for this item. Se uno degli stack frame nel thread corrente, quel frame viene selezionata per impostazione predefinita nel sottomenu.If one of the stack frames is on the current thread, that frame is selected by default in the submenu.
Passare all'attività o passa a ThreadGo to Task or Go to Thread Consente di attivare i attività o thread Vista e mantiene lo stesso stack frame evidenziato.Switches to the Task or Threads view, and keeps the same stack frame highlighted.
Vai a codice sorgenteGo To Source Code Passa alla posizione corrispondente nella finestra del codice sorgente.Goes to the corresponding location in the source code window.
Vai a disassemblyGo To Disassembly Passa alla posizione corrispondente nel Disassembly finestra.Goes to the corresponding location in the Disassembly window.
Mostra codice esternoShow External Code Mostra o nasconde il codice esterno.Shows or hides external code.
Visualizzazione esadecimaleHexadecimal Display Consente di passare dalla visualizzazione decimale a quella esadecimale e viceversa.Toggles between decimal and hexadecimal display.
Mostra thread nell'origineShow Threads in Source Contrassegna la posizione del thread nella finestra del codice sorgente.Flags the location of the thread in the source code window.
Informazioni sul caricamento simboliSymbol Load Information Apre la informazioni sul caricamento simboli nella finestra di dialogo.Opens the Symbol Load Information dialog box.
Impostazioni simboliSymbol Settings Apre la impostazioni simboli nella finestra di dialogo.Opens the Symbol Settings dialog box.

visualizzazione threadThreads view

Nelle thread consente di visualizzare, lo stack frame e il percorso di chiamate del thread corrente sono evidenziati in blu.In Threads view, the stack frame and call path of the current thread are highlighted in blue. La posizione corrente del thread è indicata dalla freccia gialla.The current location of the thread is shown by the yellow arrow.

Per modificare lo stack frame corrente, fare doppio clic su un altro metodo.To change the current stack frame, double-click a different method. Ciò potrebbe passare anche il thread corrente, a seconda che il metodo selezionato sia parte del thread corrente o un altro thread.This might also switch the current thread, depending on whether the method you select is part of the current thread or another thread.

Quando la thread visualizzazione grafico è troppo grande per rientrare nella finestra di un assaggio controllo viene visualizzato nella finestra.When the Threads view graph is too large to fit into the window, a Bird's Eye View control appears in the window. È possibile spostare il frame del controllo per passare a diverse parti del grafico.You can move the frame in the control to navigate to different parts of the graph.

La figura seguente mostra un thread che va da Main a Managed per eseguire la transizione di codice nativo.The following illustration shows one thread that goes from Main to a Managed to Native code transition. Sei thread sono nel metodo corrente.Six threads are in the current method. Uno continua a thread. Sleep e un altro continua a console. WriteLine e quindi a SyncTextWriter.WriteLine.One continues to Thread.Sleep, and another continues to Console.WriteLine and then to SyncTextWriter.WriteLine.

Visualizzazione nella finestra Stack in parallelo threadThreads view in Parallel Stacks window

La tabella seguente descrive le principali funzionalità dei thread Vista:The following table describes the main features of the Threads view:

CalloutCallout Nome elementoElement name DescrizioneDescription
11 Segmento o nodo dello stack di chiamateCall stack segment or node Contiene una serie di metodi per uno o più thread.Contains a series of methods for one or more threads. Se il frame non contiene alcuna riga freccia connessa a esso, il frame viene illustrato l'intero percorso di chiamate per i thread.If the frame has no arrow lines connected to it, the frame shows the entire call path for the thread(s).
22 Evidenziazione bluBlue highlight Indica il percorso di chiamate del thread corrente.Indicates the call path of the current thread.
33 Righe della frecciaArrow lines Connettono i nodi per costituire l'intero percorso di chiamate per i thread.Connect nodes to make up the entire call path for the thread(s).
44 Intestazione del nodoNode header Mostra il numero di processi e thread per il nodo.Shows the number of processes and threads for the node.
55 MetodoMethod Rappresenta uno o più stack frame nello stesso metodo.Represents one or more stack frames in the same method.
66 Descrizione comando sul metodoTooltip on method Viene visualizzata quando si passa il mouse su un metodo.Appears when you hover over a method. Nelle thread visualizzazione, la descrizione comando Mostra tutti i thread, in una tabella simile al thread finestra.In Threads view, the tooltip shows all threads, in a table similar to the Threads window.

Visualizzazione AttivitàTasks view

Se l'app Usa System.Threading.Tasks.Task oggetti (codice gestito) oppure task_handle oggetti (codice nativo) per esprimere il parallelismo, è possibile usare attività visualizzazione.If your app uses System.Threading.Tasks.Task objects (managed code) or task_handle objects (native code) to express parallelism, you can use Tasks view. La visualizzazione Attività mostra gli stack di chiamate delle attività anziché dei thread.Tasks view shows call stacks of tasks instead of threads.

Nelle attività Vista:In Tasks view:

  • Non vengono visualizzati gli stack di chiamate dei thread che non sono in esecuzione attività.Call stacks of threads that aren't running tasks aren't shown.
  • Gli stack di chiamate dei thread che eseguono le attività sono visivamente tagliati nella parte superiore e inferiore, per mostrare i frame più rilevanti per le attività.Call stacks of threads that are running tasks are visually trimmed at the top and bottom, to show the most relevant frames for tasks.
  • Quando più attività sono in un unico thread, gli stack di chiamate di queste attività vengono visualizzati in nodi separati.When several tasks are on one thread, the call stacks of those tasks are shown in separate nodes.

Per visualizzare un intero stack di chiamate, tornare a thread vista facendo clic in uno stack frame e selezionando passa a Thread.To see an entire call stack, switch back to Threads view by right-clicking in a stack frame and selecting Go to Thread.

La figura seguente mostra le thread visualizzazione in alto e il corrispondente attività visualizzazione nella parte inferiore.The following illustration shows the Threads view at the top and the corresponding Tasks view at the bottom.

Le visualizzazioni di thread e attivitàThreads and Tasks views

Passare il mouse su un metodo per visualizzare una descrizione comando con informazioni aggiuntive.Hover over a method to show a tooltip with additional information. Nelle attività visualizzazione, la descrizione comando Mostra tutte le attività in una tabella simile al attività finestra.In Tasks view, the tooltip shows all the tasks in a table similar to the Tasks window.

L'immagine seguente mostra la descrizione comando per un metodo nel thread visualizzazione nella parte superiore e per il corrispondente attività visualizzazione nella parte inferiore.The following image shows the tooltip for a method in the Threads view at the top and for the corresponding Tasks view at the bottom.

Le descrizioni comandi thread e attivitàThreads and Tasks tooltips

Visualizzazione metodoMethod View

Da una thread view o attività visualizzazione, è possibile ruotare il grafico sul metodo corrente, selezionare il attiva/disattiva visualizzazione metodo icona sulla barra degli strumenti.From either Threads view or Tasks view, you can pivot the graph on the current method by selecting the Toggle Method View icon on the toolbar. La visualizzazione Metodo mostra immediatamente tutti i metodi in tutti i thread che chiamano o sono chiamati dal metodo corrente.Method View shows at a glance all methods on all threads that either call or are called by the current method. La figura seguente mostra come le stesse informazioni appaiono thread Visualizza a sinistra e nella visualizzazione metodo sulla destra.The following illustration shows how the same information looks in Threads view on the left and in Method View on the right.

Metodo e visualizzazione dei threadThreads view and Method View

Se si passa a un nuovo stack frame, è rendere tale metodo il metodo corrente, e visualizzazione metodo Mostra tutti i chiamanti e chiamati per il nuovo metodo.If you switch to a new stack frame, you make that method the current method, and Method View shows all callers and callees for the new method. È possibile che, in conseguenza a ciò, alcuni thread compaiano o scompaiano dalla visualizzazione, a seconda che il metodo sia visualizzato nei relativi stack di chiamate.This may cause some threads to appear or disappear from the view, depending on whether that method appears on their call stacks. Per tornare alla visualizzazione dello stack di chiamate, selezionare la visualizzazione metodo nuovamente clic sull'icona della barra degli strumenti.To return to the call stack view, select the Method View toolbar icon again.

Vedere ancheSee also