Анализ производительности асинхронного кода .NET

С помощью инструмента .NET Async можно проанализировать производительность асинхронного кода в приложении.

Примечание.

Для инструмента .NET Async требуется Visual Studio 2019 версии 16.7 или более поздней и проект .NET, в котором используются ключевые слова async и await.

Настройка

  1. Откройте профилировщик производительности (ALT+F2) в Visual Studio.

  2. Установите флажок .NET Async.

    .NET Async tool selected

  3. Нажмите кнопку Запуск, чтобы запустить средство.

  4. После его запуска просмотрите сценарий, который вы хотите профилировать в приложении. Затем выберите Остановить сбор или закройте приложение, чтобы просмотреть данные.

  5. После остановки сбора данных появится таблица действий, которые выполнялись во время сеанса профилирования.

    .NET Async tool stopped

Асинхронные события упорядочены по действиям в хронологическом порядке. Для каждого указано время начала, время окончания и длительность.

Все строки, соответствующие пространству имен task, помечаются в столбце Имя. Каждое имя task, которое не удается разрешить, сопровождается меткой Task в. За ней следует имя метода, в котором встречается task. Если асинхронное действие не завершается в ходе сеанса сбора, в столбце Время окончания оно помечается Не завершено.

Для дальнейшего анализа определенной задачи или действия щелкните правой кнопкой мыши соответствующую строку. Выберите Перейти к исходному файлу, чтобы посмотреть код, в котором происходит это действие.

.NET Async tool with Go To Source File selected