Поделиться через


Метод IHostMemoryManager::VirtualFree

Служит логической оболочкой для соответствующей функции Win32. Реализация Win32 выпусков VirtualFree , списаний или выпусков и отзывает регион страниц в виртуальном адресном пространстве вызывающего процесса.

Синтаксис

HRESULT VirtualFree (  
    [in] LPVOID  lpAddress,  
    [in] SIZE_T  dwSize,  
    [in] DWORD   dwFreeType  
);  

Параметры

lpAddress
[in] Указатель на базовый адрес освобождаемых страниц виртуальной памяти.

dwSize
[in] Размер освобождаемой области (в байтах).

dwFreeType
[in] Тип операции освобождения.

Возвращаемое значение

HRESULT Описание:
S_OK VirtualFree возвращено успешно.
HOST_E_CLRNOTAVAILABLE Среда CLR не была загружена в процесс, или среда CLR находится в состоянии, в котором она не может выполнить управляемый код или обработать вызов.
HOST_E_TIMEOUT Время ожидания звонка истекло.
HOST_E_NOT_OWNER Вызывающий объект не владеет блокировкой.
HOST_E_ABANDONED Событие было отменено во время ожидания заблокированного потока или волокна.
E_FAIL Произошла неизвестная катастрофическая ошибка. Когда метод возвращает E_FAIL, среда CLR больше не используется в рамках процесса. Последующие вызовы методов размещения возвращают HOST_E_CLRNOTAVAILABLE.
HOST_E_INVALIDOPERATION Предпринята попытка освободить память, которая не была выделена через узел.

Комментарии

VirtualFree освобождает страницы виртуальной памяти, связанные с lpAddress параметром , с помощью более раннего вызова функции IHostMemoryManager::VirtualAlloc . Попытки освободить память, которая не была выделена с помощью узла, должны возвращать HOST_E_INVALIDOPERATION.

Семантика идентична семантике реализации VirtualFreeWin32 . Дополнительные сведения см. в документации по платформе Windows.

Требования

Платформы: см. раздел Требования к системе.

Заголовка: MSCorEE.h

Библиотека: Включается в качестве ресурса в MSCorEE.dll

версии платформа .NET Framework: доступно с версии 2.0.

См. также раздел