Поделиться через


Анализ выполняемого процесса

Используйте следующие команды, чтобы записать и проанализировать выделение памяти кучи в запущенном процессе. Этот анализ посвящен трассировкам стека.

umdh -p:PID [-f:LogFile] [-v[:MsgFile]] | [-g] | [-h]

Параметры

-p:PiD
Задает процесс для анализа. PID — это идентификатор процесса процесса. Этот параметр является обязательным.

Чтобы найти идентификатор идентификатора выполняемого процесса, используйте диспетчер задач, список задач или TList.

-f:LogFile
Сохраняет содержимое журнала в текстовом файле. По умолчанию UMDH записывает журнал в stdout (командное окно).

LogFile указывает путь (необязательно) и имя файла. Если указать существующий файл, UMDH перезаписывает файл.

Обратите внимание , что если UMDH не запущен в режиме администратора или пытается записать в защищенные пути, доступ будет отказано в доступе.

-v[:MsgFile]
Режим подробного вывода. Создает подробные информационные и сообщения об ошибках. По умолчанию UMDH записывает эти сообщения в stderr.

MsgFile указывает путь (необязательно) и имя текстового файла. При использовании этой переменной UMDH записывает подробные сообщения в указанный файл вместо stderr. Если указать существующий файл, UMDH перезаписывает файл.

-g
Записывает блоки кучи, на которые не ссылается процесс ("сборка мусора").

-h
Вывод справки.

Комментарии

В Windows 2000, если UMDH сообщает об ошибках поиска базы данных трассировки стека стека, и вы включили параметр "Создать базу данных трассировки в режиме пользователя" в GFlags, может возникнуть конфликт файлов символов. Чтобы устранить эту проблему, скопируйте файлы символов DBG и PDB для приложения в тот же каталог и повторите попытку.

Пример использования

umdh -?
umdh -p:2230
umdh -p:2230  -f:dump_allocations.txt
umdh -p:2230 -f:c:\Log1.txt -v:c:\Msg1.txt
umdh -p:2230 -g -f:garbage.txt