Метод IHostMemoryManager::VirtualFree
Обновлен: Ноябрь 2007
Служит логической программой-оболочкой для соответствующей функции Win32. Реализация метода VirtualFree для Win32 освобождает, снимает выделение или освобождает и снимает выделение области страниц виртуального адресного пространства процесса вызова.
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 не загружена в процесс или находится в состоянии, в котором ей не удается выполнить управляемый код или успешно обработать вызов. |
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.
Семантика идентична семантике операции реализации метода VirtualFree для Win32. Дополнительные сведения см. в документации по платформе Windows.
Требования
Платформы: см. раздел Требования к системе для .NET Framework.
Заголовок: MSCorEE.idl
Библиотека: включена как ресурс в MSCorEE.dll
Версии платформы .NET Framework: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0