How to find out who created a private heap?

I have a Windows C ++ application that has a memory leak. I am sure the leak is in one of our (many) related libraries. I applied a global new and delete function in our application, and the application calls to allocate memory seem fine. However, they account for about 10% of the workflow. When I walk in heaps // http://msdn.microsoft.com/en-us/library/ee175819%28v=VS.85%29.aspx GetProcessHeaps () http://msdn.microsoft.com/en- returns us / library / aa366571% 28v = VS.85% 29.aspx

I see about a dozen heaps, one of which contains about half a gigabyte of royalties. Opps!

Okay, so HOW can I find out which of the libs does this? Is it even necessary to find out who distributes the heaps? I have a handle to each heap.

+3
source share
1 answer

A simple method would be to connect a function HeapCreate(). An example of this is here .

+1
source

Source: https://habr.com/ru/post/1763115/


All Articles