Если я не ошибаюсь, вы, вероятно, ищете Process Monitor (он же procmon). Вы можете получить его с этого сайта Microsoft .
В частности, пункт меню «Сводка стека» содержит такую информацию. Подробнее в разделе PM2-6: Развертывание стека
Иногда, исследуя проблемы SQL Server, я нахожу полезным иметь возможность подключить к нему отладчик Visual Studio и попытаться выяснить, что он делает, посмотрев на стек вызовов (общедоступные символы доступны и часто можно сделать выводы полезными информация из названий методов).
Отличный пример типа внутренней информации, которая может быть выведена из этого поста в блоге, которая вдохновила мои попытки.
Однако это может быть довольно трудоемким и утомительным процессом. Обычно я запускаю интересующий код в цикле, присоединяю отладчик, затем непрерывно прерываю работу и продолжаю, пока не попаду в стек вызовов, который выглядит интересным для исследуемого вопроса. Затем я могу просмотреть код и посмотреть имена вызываемых методов. Это занимает много времени, однако.
Есть ли способ автоматизировать это, чтобы я мог просто записывать все методы, вызываемые в течение короткого периода времени, а затем просматривать файл журнала?
Если я не ошибаюсь, вы, вероятно, ищете Process Monitor (он же procmon). Вы можете получить его с этого сайта Microsoft .
В частности, пункт меню «Сводка стека» содержит такую информацию. Подробнее в разделе PM2-6: Развертывание стека
Для этого можно использовать профилировщик в более поздних версиях Visual Studio.
Пример вывода
(И ответ здесь показывает, почему это полезно)
Кроме того, Windows Performance Toolkit является бесплатным и может делать то же самое и многое другое. Хорошую серию видео по этому вопросу можно найти по адресу https://channel9.msdn.com/Search?term=Defrag%20tools%20wpt#ch9Search.