Application.Run - это функция, потребляющая больше всего ресурсов ЦП в моем приложении; что я могу оптимизировать?

В моем приложении WPF есть функция, с помощью которой оно отображает большое количество изображений в фоновом режиме при обновлении пользовательского интерфейса всякий раз, когда готово новое изображение.

Профилирование этого процесса показало, что Application.Run - это функция, выполняющая наибольшую часть работы (43%), причем «второе место по стоимости» делится между тремя графическими API-интерфейсами, каждый на 6%.

Что я могу делать, чтобы столько времени было потрачено на Application.Run ? Кажется, что в основе этого метода работает главный диспетчер моего приложения, но это не помогает мне понять, что именно диспетчер делает так много. Могу ли я получить более подробный профиль?

Примечание: я имею в виду System.Windows.Application.Run .

7
задан Roman Starkov 1 February 2012 в 11:10
поделиться