dotTrace

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
dotTrace
Логотип программы dotTrace
Тип Профилировщик
Разработчик JetBrains
Операционная система Windows 11 или поздние
Последняя версия 2022.1.2 (3 июня 2022)
Лицензия Проприетарная
Сайт jetbrains.com/ru-ru/prof…

JetBrains' dotTrace — проприетарный профилировщик для отслеживания проблем производительности и узких мест использования памяти в приложениях на платформе .NET. 18 ноября 2010 года была выпущена версия dotTrace 4.0.1.

dotTrace предназначен для профилирования приложений на основе платформы .NET Framework версий 1.1, 2.0, 3.x и 4.x, отслеживание использования памяти .NET-приложениями версий 2.0 — 4.x. Кроме того, возможно профилирование ASP.NET-приложений, работающих на Internet Information Services и ASP.NET Development Server, а также можно профилировать службы Windows. Поддерживается, как интеграция в Visual Studio, так и работа в режиме командной строки.

Возможности и особенности

[править | править код]
  • Удобное представление данных: несколько режимов отображения (дерево вызовов, критические участки кода и пр.), причём каждый вызов функции представлен в виде информативной иконки, содержащей информацию о потребленном времени и других параметрах; для функций предусмотрена возможность создания отдельных вкладок; отчёты можно сохранять и просматривать внешними программами и т. д.
  • Режимы профилирования: поддерживаются 4 режима — семплирование, трассировка, измерение времени потока подпрограммы и общий анализ времени. В режиме семплирования профилирования выполняется примерно в 30 раз быстрее, чем при трассировке, но при этом жертвуется точность измерения, данный режим предназначен для быстрого профилирования. В режиме измерения времени потока при помощи специального таймера анализируется эффективность выполнения потока. Данный режим используется для анализа многопоточных приложений.
  • Сравнение снимков состояния программы: можно сравнивать два любые снимка состояния (snapshots) программы, при этом программа выдаст анализ их различий.
  • Статистика по функциям: поддерживается сбор статистики по каждой функции, соответственно, в дереве вызовов можно легко получить информацию по количеству вызовов каждой функции и др.
  • Фильтрация: можно настраивать программу на сбор информации только по нужным функциям.
  • Профилирование памяти: поддерживается анализ потребляемой памяти .NET-приложениями (только для версий 2.0 и 3.x). Причём профилирование может выполняться в двух режимах: путём формирования снимков (дампов) памяти во время выполнения программы, что позволит выявить загрузку ненужных объектов в память, а также путём сравнения состояния памяти в начале и конце некоторого временного интервала, при этом программа проведёт анализ и выдаст информацию о новых (New), живых (Live), мертвых (Dead) и ненужных (Garbage) объектах.