как я могу видеть, сколько из стекового пространства в настоящее время используется в моем приложении Дельфи?

как я могу видеть, сколько из стекового пространства в настоящее время используется в моем приложении Дельфи? у меня была очень странная ошибка, которая походит на проблему стека. я хотел бы добавить его к журналу своего приложения для получения некоторое представление, сколько стекового пространства находится в употреблении. использование отладчика является, вероятно, не настолько большим, потому что стандартную программу можно много раз называть.

спасибо!

10
задан X-Ray 29 April 2010 в 23:46
поделиться

2 ответа

Это должно дать вам текущее использование стека:

function CurrentStackUsage: DWord;
asm
  mov eax, fs:[4]
  sub eax, esp
end;

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

12
ответ дан 3 December 2019 в 23:12
поделиться

VMmap от SysInternals может предоставить вам графическое представление каждого типа памяти, используемой вашим приложением, включая стек. Он не дает вам точного использования, как функция в ответе Пера Ларсена, но может помочь вам визуализировать использование памяти на разных этапах вашего приложения.

2
ответ дан 3 December 2019 в 23:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: