IMallocSpy

The IMallocSpy interface is a debugging interface that allows application developers to monitor (spy on) memory allocation, detect memory leaks and simulate memory failure.

Caution The IMallocSpy interface is intended to be used only to debug application code under development. Do not ship this interface to retail customers of your application, because it causes severe performance degradation and could conflict with user-installed software to produce unpredictable results.

When to Implement

Implement this interface to debug memory allocation during application development.

When to Use

IMallocSpy
methods are called only by OLE; applications do not call them. An application provides an implementation of IMallocSpy (see the OLE SDK for an example); OLE uses this implementation. When an implementation of IMallocSpy is registered with CoRegisterMallocSpy, OLE calls the pair of IMallocSpy methods around the corresponding IMalloc method. The call to the pre-method through the return from the corresponding post-method is guaranteed to be thread-safe.

Methods in Vtable Order

IUnknown Methods
Description
QueryInterface
Returns pointers to supported interfaces.
AddRef
Increments reference count.
Release
Decrements reference count.

IMallocSpy Methods
Description
PreAlloc
Called before invoking IMalloc::Alloc.
PostAlloc
Called after invoking IMalloc::Alloc.
PreFree
Called before invoking IMalloc::Free.
PostFree
Called after invoking IMalloc::Free.
PreRealloc
Called before invoking IMalloc::Realloc.
PostRealloc
Called after invoking IMalloc::Realloc.
PreGetSize
Called before invoking IMalloc::GetSize.
PostGetSize
Called after invoking IMalloc::GetSize.
PreDidAlloc
Called before invoking IMalloc::DidAlloc.
PostDidAlloc
Called after invoking IMalloc::DidAlloc.
PreHeapMinimize
Called before invoking IMalloc::DidAlloc.
PostHeapMinimize
Called after invoking IMalloc::HeapMinimize.

See Also

IMalloc, CoGetMalloc, CoRegisterMallocSpy

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database