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


Метод 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

См. также

Ссылки

Интерфейс IHostMemoryManager

Интерфейс IHostMAlloc