Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Requests that the host allocate the specified amount of memory from the heap, and additionally track where the memory was allocated.
HRESULT DebugAlloc (
[in] SIZE_T cbSize,
[in] EMemoryCriticalLevel dwCriticalLevel,
[in] char* pszFileName,
[in] int iLineNo,
[out] void** ppMem
);
Parameters
cbSize
[in] The size, in bytes, of the current memory allocation request.dwCriticalLevel
[in] One of the EMemoryCriticalLevel values, indicating the impact of an allocation failure.pszFileName
[in] The code file of the executable being debugged.iLineNo
[in] The line number in pszFileName where the allocation was requested.ppMem
[out] A pointer to the allocated memory, or null if the request could not be completed.
Return Value
HRESULT |
Description |
---|---|
S_OK |
DebugAlloc returned successfully. |
HOST_E_CLRNOTAVAILABLE |
The CLR has not been loaded into a process, or the CLR is in a state in which it cannot run managed code or process the call successfully. |
HOST_E_TIMEOUT |
The call timed out. |
HOST_E_NOT_OWNER |
The caller does not own the lock. |
HOST_E_ABANDONED |
An event was canceled while a blocked thread or fiber was waiting on it. |
E_FAIL |
An unknown catastrophic failure occurred. When a method returns E_FAIL, the CLR is no longer usable within the process. Subsequent calls to hosting methods return HOST_E_CLRNOTAVAILABLE. |
E_OUTOFMEMORY |
Not enough memory was available to complete the allocation request. |
Remarks
The CLR gets an interface pointer to an IHostMalloc instance by calling the IHostMemoryManager::CreateMalloc method. DebugAlloc allows the runtime to get code file information for use during debugging.
Requirements
Platforms: See .NET Framework System Requirements.
Header: MSCorEE.h
Library: Included as a resource in MSCorEE.dll
.NET Framework Versions: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0