Какие есть хорошие профилировщики .NET?
Другие охватывали профилирование dotnet производительности, но что касается профилирования памяти В dot-net настоящее время я оцениваю c-sharp как Scitech .NET Memory Profiler profiler 3.1, так и ANTS Memory Profiler profilers 5.1 (текущие версии по состоянию profiler на сентябрь 2009 г.). Я пробовал csharp JetBrains один год или два profiling-tools назад, и он был не так хорош, как .net-framework ANTS (для профилирования .cs-file памяти), поэтому на этот csharp раз я не стал беспокоиться. Читая c#.net веб-сайты, похоже, что у profiling-tools него нет тех же функций профилирования памяти, как profiler у двух других.
Как ANTS, так c#.net и профилировщик памяти Scitech c#.net имеют функции, которых нет c#-language у другого, поэтому какой .net вариант лучше всего будет .cs-file зависеть от ваших предпочтений. Вообще c# говоря, Scitech предоставляет .net более подробную информацию, в c#-language то время как ANTS действительно .net невероятно идентифицирует .cs-file протекающий объект. В целом, я profiling предпочитаю ANTS, потому .net что он очень быстро обнаруживает c-sharp возможные утечки.
Вот основные c#-language плюсы и минусы каждого из c#-language моих опытов:
Общие функции ANTS и Scitech .NET Memory Profiler
- Функция анализа в реальном времени.
- Отличные обучающие видео на их веб-сайтах.
- Простота использования
- Достаточно производительный (очевидно, медленнее, чем без профилировщика, но не настолько, чтобы вы разочаровались)
- Показать экземпляры протекающих объектов.
- В основном они оба неплохо справляются со своей задачей.
МУРАВЬИ
- Фильтры одним щелчком для поиска распространенных утечек, в том числе: объекты, которые остаются активными только обработчиками событий, объекты, которые удаляются, но все еще остаются активными, и объекты, которые остаются активными только по ссылке из удаленного объекта . Вероятно, это убийственная особенность ANTS - из-за этого поиск утечек происходит невероятно быстро. По моему опыту, большинство утечек вызвано тем, что обработчики событий не отключаются, и ANTS просто направляет вас прямо к этим объектам. Замечательно.
- График удержания объекта. Хотя та же информация доступна в Scitech, ее гораздо проще интерпретировать в ANTS.
- Показывает размер вместе с дочерними элементами в дополнение к размеру самого объекта (но только когда экземпляр выбран, к сожалению, не в общем списке классов).
- Лучшая интеграция с Visual Studio (щелкните правой кнопкой мыши график, чтобы перейти к файлу).
Scitech .NET Memory Profiler
- Показывает трассировку стека, когда объект был выделен. Это действительно полезно для объектов, которые размещены во множестве разных мест. С помощью ANTS трудно точно определить, где был создан просочившийся объект.
- Показывает количество одноразовых предметов, которые не были утилизированы. Хотя это и не свидетельствует об утечке, он определяет возможности решения этой проблемы и повышения производительности вашего приложения за счет более быстрой сборки мусора.
- Более подробные параметры фильтрации (несколько столбцов можно фильтровать независимо).
- Представляет информацию об общем количестве созданных объектов (включая собранный мусор). ANTS показывает только статистику «живых» объектов. Это упрощает анализ и настройку общей производительности приложения (например, определение того, где создается множество объектов без необходимости, которые не обязательно протекают).
Подводя итог, я .net считаю, что ANTS помогает csharp быстрее находить утечки, в visual-c# то время как Scitech предоставляет dot-net более подробную информацию profilers об общей производительности csharp памяти вашего приложения profiler и отдельных объектах, если c# вы знаете, на что обращать profilers внимание (например, трассировку profiling стека при создании). Если .net бы трассировка стека и отслеживание profiling неудаленных одноразовых объектов .cs-file были добавлены в ANTS, я dotnet бы не видел необходимости visual-c# использовать что-либо еще.
c#
.net
profiling
profiler
Какие есть хорошие профилировщики .NET?
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.