Метод IHostMAlloc::DebugAlloc
Запрашивает у основного приложения выделение заданного объема памяти из кучи и дополнительное отслеживание ее распределения.
HRESULT DebugAlloc (
[in] SIZE_T cbSize,
[in] EMemoryCriticalLevel dwCriticalLevel,
[in] char* pszFileName,
[in] int iLineNo,
[out] void** ppMem
);
Параметры
cbSize
[in] Размер, указанный в текущем запросе на выделение памяти (в байтах).dwCriticalLevel
[in] Одно из значений EMemoryCriticalLevel, указывающее на воздействие сбоя при выделении памяти.pszFileName
[in] Файл кода отлаживаемого исполняемого файла.iLineNo
[in] Число строк в параметре pszFileName, для которого запрашивается выделение памяти.ppMem
[out] Указатель на выделенную память или значение NULL в случае невозможности выполнения запроса.
Возвращаемое значение
HRESULT |
Описание |
---|---|
S_OK |
Метод DebugAlloc успешно возвратил значение. |
HOST_E_CLRNOTAVAILABLE |
Среда CLR не загружена в процесс или находится в состоянии, в котором ей не удается выполнить управляемый код или успешно обработать вызов. |
HOST_E_TIMEOUT |
Время ожидания вызова истекло. |
HOST_E_NOT_OWNER |
Вызывающий объект не владеет блокировкой. |
HOST_E_ABANDONED |
Событие, которого ожидал заблокированный поток или нить, было отменено. |
E_FAIL |
Произошел неизвестный разрушительный сбой. Если метод вернет значение E_FAIL, среду CLR более нельзя будет использовать в данном процессе. Последующие вызовы методов размещения возвращают значение HOST_E_CLRNOTAVAILABLE. |
E_OUTOFMEMORY |
Недостаточно памяти для выполнения запроса на выделение памяти. |
Заметки
Среда CLR получает указатель интерфейса экземпляра IHostMalloc путем вызова метода IHostMemoryManager::CreateMalloc. DebugAlloc позволяет среде выполнения получать сведения о файле кода для использования во время отладки.
Требования
Платформы: см. раздел Требования к системе для .NET Framework.
Заголовок: MSCorEE.h
Библиотека: включена как ресурс в MSCorEE.dll
Версии платформы .NET Framework: 4, 3.5 с пакетом обновления 1 (SP1), 3.5, 3.0 с пакетом обновления 1 (SP1), 3.0, 2.0 с пакетом обновления 1 (SP1), 2.0