#c#-3.0
#c #-3.0
Вопрос:
Какие инструменты использовать, чтобы выяснить причину высокой загрузки процессора в приложении .net?
WPF / C # 3.0 / .net 3.5
Ответ №1:
Примените профилировщик, чтобы понять, где используется процессор: какие части вашего кода «горячие». Затем вы можете просмотреть дизайн этих частей кода.
Обратите внимание, высокая загрузка процессора может быть вполне разумной.
Комментарии:
1. 1. Согласен, что высокая загрузка процессора по своей сути не является чем-то плохим, за исключением, возможно, случаев, когда вся машина зависает или переходит в режим обхода.
Ответ №2:
Сначала вам нужно выяснить, где ваше приложение тратит большую часть процессорного времени — я предлагаю вам запустить профилировщик производительности, такой как:
И посмотрите, где вы проводите большую часть времени. Если вы хотите определить конкретные узкие места, вы можете попробовать использовать Stopwatch. Подробности я написал в своем блоге.
Комментарии:
1. не уверен, поможет ли использование
Stopwatch
понять, какие части кода вызывают высокую загрузку процессора.2. @MainMa Использование stopWatch полезно, только если у вас уже есть некоторые подозрения и вы хотите это проверить. В противном случае используйте профилировщик
Ответ №3:
Согласен, вам нужен профилировщик. Visual Studio 2010 Premium или Ultimate Edition имеет встроенный профилировщик. Я не использовал его, но он должен быть полезен в качестве альтернативы dotTrace или ANTS.
Ответ №4:
VS2013 уже поставляется с очень хорошим встроенным профилировщиком