Threads
In the integrated Timeline Viewer, you can work with threads (filter by thread, select time intervals, and so on) using either the Threads filter or the Threads Timeline tool window.
Threads Filter
Threads filter is used to display thread activity as well as apply filter by a particular thread. The filter displays top five threads with the largest time value (applied filters are taken into account).
Note that unlike the Threads Timeline tool window, Threads filter does not allow selecting multiple threads.
ID and type
Thread ID and thread type (or thread name* if a thread has a name).
dotTrace distinguishes the following thread types:
- Main
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. - Finalizer
A thread that performs object finalization. - Native
An unmanaged system thread.
ms / MB / events
Filtered time / allocated memory / number of events. For example, if time is selected for analysis 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 thread's Waiting time intervals.
%
The percentage of the filtered time / allocated memory / number of events relative to all selected time intervals / allocated memory / number of events.
Selecting Threads
To select a thread:
To select a number of threads:
After you select a thread, the filter by this thread will be applied. All other filters will show data only for the selected threads.
Use this to analyze only specific threads.
Threads Timeline Tool Window
The Threads filter shows only top five threads sorted by filtered time value. To view all threads in the profiled application as well as their activity, open the Threads Timeline tool window. The window shows the same thread data as the Threads filter but in addition, allows viewing threads activity on the timeline, selecting multiple threads and specific time intervals. The window is almost identical to the Threads Diagram in the standalone Timeline Viewer.
To open the Threads Timeline window:
Selecting Threads
To select threads:
- Click on the desired thread(s).
After you select a thread(s), the filter by Thread will be applied. All other filters will show data only for the selected thread(s).
Use this to analyze only specific threads.
Selecting Time Interval and Thread
To select a time interval:
- Drag the mouse over the desired interval and thread holding the left mouse button.
After this, the Selected Time Interval and Thread filter will be applied. All other filters will show data only for the selected time range and thread.
Hiding Threads
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 threads by type:
Sorting Threads
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.
Zooming
To zoom in/out the diagram:
After you zoom the diagram, the Visible Time Interval filter will be applied. All other filters will show data only for the currently visible intreval.
If a time interval is selected on the diagram, you can zoom in to this interval.
Panning
To pan the diagram:
- Drag the mouse holding the right mouse button.