dotTrace distinguishes the following thread types:
The thread that starts the application.
- Thread Pool
A thread created by the CLR Thread Pool.
- CLR Worker
A worker thread created by CLR.
- Garbage Collection
A thread that performs background garbage collection.
A thread that performs object finalization.
An unmanaged system thread.
ms / MB / events
Filtered time / allocated memory / number of events. For example, if Not Selected event is selected and no other filters are applied, this will be the entire thread lifetime. If, for instance, you select Waiting in the Thread State filter, this time will be a sum of all Waiting time intervals.
Thread activity timeline
The timeline distinguishes three thread states: Running, Waiting, Ready (corresponding to the Thread State filter). After you apply any filter, the timeline will highlight the filtered time intervals or point events.
Thread timeline can also show detailed info about activity in a particular time point in a smart tooltip. Learn more about tooltips below.
Threads diagram in both standalone and Visual Studio viewers support smart tooltips. Hold the mouse over a specific time point on the timeline and a tooltip containing current thread state, executed method, and other info will appear.
Tooltips are context-sensitive. This means that if some filter is applied, the tooltip will contain additional data on the filtered event. For example, when the File Operations filter is selected, the tooltip additionally shows info about file operation, file name, and data size.
To select threads:
- Click on the desired thread(s).
Use this to analyze only specific threads.
In some cases, it may be convenient to select all threads of a particular type.
To select threads by type:
Selecting Time Interval and Thread
To select a time interval:
- Drag the mouse over the desired interval and thread holding the left mouse button.
To simplify analysis, you can hide threads that are not currently interesting (for example, do not perform any work on the selected time interval).
To hide a specific thread:
To hide (non-)selected threads:
To hide threads by type:
By default, the list of threads is sorted by their creation order. By clicking on the column headers, you can sort threads by other criterion: ID, Type, ms / MB / events, %. The column that is currently used for sorting is marked with the sign.
To zoom in/out the diagram:
If a time interval is selected on the diagram, you can zoom in to this interval.
To zoom in to the selected time interval:
After this the selected time range will take the entire diagram.
To pan the diagram:
- Drag the mouse holding the right mouse button.