dotTrace
 
Get dotTrace

Threads Tree

Last modified: 26 May 2024

The Threads Tree view serves many purposes. Typical use cases include the following:

  • View what kind of threads are being spawned by your application.

  • Monitor all threads and their activities.

  • Analyze each thread's activity.

  • Find and examine critical execution paths.

The Threads Tree view lists all threads in your application. They are sorted by their execution time. Each thread is identified by its name or ID. The main thread is marked with the Main_Thread.png icon. The finalizer thread is marked with the ThemedIcon.JetBrainsProfilerUIResourcesMeasureControllerStopDrop.Screen.[-].png icon. Other threads are worker threads. If a thread pumps messages, it has the Thread_with_Message.png icon, otherwise not.

Reference__Snapshot_Views__Threads_Tree__All_Threads.png

You can expand a thread node and search the call stack for expensive functions. The appearance of this view depends on the current filters settings.

Reference__Snapshot_Views__Threads_Tree.png

Each node in the Thread Tree view contains the following information:

Reference__Snapshot_Views__Threads_Tree__Line.png
  1. The percentage of time spent in this call related to time spent executing the thread.

  2. Short name of the function being called.

  3. Total time spent in this function and its subtree.

    note

    If total time is marked with an asterisk (*), it means that a function or a thread had started before dotTrace started taking measurements and/or finished after dotTrace had stopped taking measurements.

  4. Number of calls made in this call stack.

  5. Full name of the called function.

    tip

    Namespace presentation style can be configured in the Options dialog. For more information, refer to dotTrace Options: View.