Можно ли обнаружить утечки GDI из отладчика Visual Studio? - PullRequest
23 голосов
/ 01 декабря 2010

Протекающие объекты GDI можно увидеть в диспетчере задач или в Process Explorer .(Ну, вы не видите утечек, но вы можете видеть, постоянно ли увеличивается количество использований объектов.)

Существуют также инструменты, позволяющие просматривать объекты GDI по типу, такие как GDIView [a], DeLeaker , DPUS или GDIDebug (sourecode) .

[a] Обратите внимание, что я считаю GDIView отличный инструмент для определения и подтверждения утечек GDI, но на самом деле он не поможет вам найти утечку кода в больших приложениях.(Я также отмечу здесь, что инструмент работает очень хорошо и, кажется, ведет себя хорошо, хотя его домашняя страница немного странная (-:)

Существует также плагин WinDBG под названием leaktrap , который используетMSs Detours Library .

Я также знаю (и использовал) AQTime Resource Profiler, который позволяет обнаруживать утечки ресурсов GDI (и других) в приложении, включаятрассировка стека для утечек вызовов.

Теперь мой актуальный вопрос: Можно ли обнаружить утечки объектов GDI из отладчика VC ++? Так что не нужно отдельногоутечки инструмента и GDI могут быть обнаружены во время обычной отладки и не должны проверяться отдельно.

Ответы [ 3 ]

7 голосов
/ 15 ноября 2011

Объекты GDI не нужно проверять индивидуально (нереально), они могут отвечать за Deleaker - и вы будете знать, где произошла утечка. Внимательно прочитайте инструкцию и посмотрите демонстрационное видео: http://deleaker.com/

3 голосов
/ 01 декабря 2010

Intel Parallel Inspector - это средство проверки утечки памяти, которое интегрировано в Visual Studio и может обнаруживать утечки GDI.

0 голосов
/ 01 декабря 2010

Visual Studio не имеет встроенного профилировщика памяти для неуправляемых приложений.

Это подтверждается.

...