|
IMallocSpy::PreAlloc
Called just prior to invoking IMalloc::Alloc.
ULONG PreAlloc(
ULONG cbRequest
| //The byte count passed to IMalloc::Alloc
| );
|
|
Parameter
cbRequest
The number of bytes in the allocation request the caller is passing to IMalloc::Alloc.
Return Value
The byte count actually passed to IMalloc::Alloc, which should be greater than or equal to the value of cbRequest.
Comments
The IMallocSpy::PreAlloc implementation may extend and/or modify the allocation to store
debug-specific information with the allocation.
PreAlloc can force memory allocation failure by returning 0, allowing testing to
ensure that the application handles allocation failure gracefully in all cases. In
this case PostAlloc is not called and Alloc returns NULL. Forcing allocation failure is effective only if cbRequest is not equal to 0. If PreAlloc is forcing failure by returning NULL, PostAlloc is not called. However, if IMalloc::Alloc encounters a real memory failure and returns NULL, PostAlloc is called.
The call to PreAlloc through the return from PostAlloc is guaranteed to be thread safe.
See Also
IMalloc::Alloc, IMallocSpy::PostAlloc, CoRegisterMallocSpy, CoRevokeMallocSpy
Related LinksSoftware for Delphi and C++ Builder developers Software for Visual Studio .NET developers Software for Visual Basic 6 developers Delphi Tips&Tricks
MegaDetailed.NET
TMS Scripter Studio Pro components for Delphi/C++Builder
More Online Helps Win32 Programmer's Reference (win32.hlp) Win32 Multimedia Programmer's Reference (mmedia.hlp) Microsoft Windows Pen API Programmer's Reference (penapi.hlp) Microsoft Windows Sockets 2 Reference (sock2.hlp) Microsoft Windows Telephony API (TAPI) Programmer's Reference (sock2.hlp) Unix Manual Pages
|