2008-09-19 4 views
0

Я работаю с большой библиотекой COM (ArcObjects), и я пытаюсь настроить утечку памяти.
Что является самым надежным способом определения объема памяти, используемой неуправляемым кодом/объектами.
Какие счетчики производительности могут использоваться?Как определить объем памяти, используемый неуправляемым кодом

ответ

0

Счетчик виртуальных байтов для процесса представляет общий объем памяти, сохраненный в процессе. Если у вас есть утечка памяти, это будет расти вверх.

2

Используйте UMDH, чтобы получить снимок вашей кучи памяти, дважды запустите его, затем используйте инструменты, чтобы показать все распределения, которые произошли между двумя моментальными снимками. Это отлично помогает вам отслеживать, какие области могут протекать.

This article объясняется простыми словами.

Я предлагаю вам использовать CComPtr <>, чтобы обернуть ваши объекты, не забывая, что вы должны освободить его, прежде чем передавать его в функцию, которая возвращает ссылку на необработанный указатель (поскольку оператор литья будет использоваться для получения указателя, который затем перезаписывается)

Смежные вопросы