Не удается обнаружить неуправляемые выделения памяти in.NET


Я хочу определить источник огромного потребления памяти моего приложения. Мое приложение съедает много виртуальной памяти (столбец VM в диспетчере задач или частные байты в VMMap)

Мое приложение-это служба .net, но она использует оболочки C# вокруг объектов C++.

Я пробовал Red Gate Ants Memory profiler, но он считает только управляемые объекты и не считает память, выделенную неуправляемым оператором c++ new (который просто вызывает Virtual Alloc).

Еще одна проблема с управляемым профилировщик памяти - это то, что не позволяет отслеживать график вызовов-см. рисунок ниже.

Введите описание изображения здесь

Введите описание изображения здесь

1 5

1 ответ:

Можно использовать DebugDiag . Он будет отслеживать объекты C# и C++.