![]() |
Возможно ли отследить этапы отрисовки окна?
Возник такой вопрос: есть ли возможность пошагово увидеть и разложить по полочкам все этапы отображения окна? Например, я кликаю на значок "Компьютер", а мне в окошке высвечивается лог типа:
- Запрос к файловой системе: 50 миллисекунд - Запрос разрешений: 20 миллисекунд - Запрос твиков из реестра: 15 миллисекунд - Ожидание ответа от сетевого диска: 800 миллисекунд - Отправка задачи на отрисовку окна видеокарте: 5 миллисекунд - Ожидание картинки от видеокарты: 100 миллисекунд - Показ готового окна Хочется просто заиметь инструмент, который покажет в каких моментах возникает узкое место, потому как штатный Монитор ресурсов показывает нагрузку на узлы (CPU, HDD...) в процентах от различных exe'шников, но не проливает свет на то, какой из этапов съедает больше всего времени. |
Avatar-Lion, не встречал такого.
В качестве эксперимента можете поиграться с Process Monitor'ом. P.S. Общий смысл примерно понятен, но вот выбор: Цитата:
|
Для обычных приложений эти параметры недоступны, т.к. они просто получают от системы через WinAPI handle готового окна без какого-либо разделения на этапы.
Т.е. всем занимается непосредственно Windows. Если в неё не встроены соответствующие функции, то узнать временные затраты никак нельзя. |
Время: 13:50. |
Время: 13:50.
© OSzone.net 2001-