Método IHostMemoryManager::VirtualFree
Serve como um wrapper lógico para a função Win32 correspondente. A implementação win32 de VirtualFree
lançamentos, decommissões ou lançamentos e decommite uma região de páginas no espaço de endereços virtuais do processo de chamada.
Sintaxe
HRESULT VirtualFree (
[in] LPVOID lpAddress,
[in] SIZE_T dwSize,
[in] DWORD dwFreeType
);
Parâmetros
lpAddress
[in] Um ponteiro para o endereço base das páginas de memória virtual a libertar.
dwSize
[in] O tamanho, em bytes, da região a libertar.
dwFreeType
[in] O tipo de operação de libertação.
Devolver Valor
HRESULT | Description |
---|---|
S_OK | VirtualFree devolvido com êxito. |
HOST_E_CLRNOTAVAILABLE | O runtime de linguagem comum (CLR) não foi carregado para um processo ou o CLR está num estado em que não pode executar código gerido ou processar a chamada com êxito. |
HOST_E_TIMEOUT | A chamada excedeu o limite de tempo. |
HOST_E_NOT_OWNER | O autor da chamada não é o proprietário do bloqueio. |
HOST_E_ABANDONED | Um evento foi cancelado enquanto um thread ou fibra bloqueado estava à espera do mesmo. |
E_FAIL | Ocorreu uma falha catastrófica desconhecida. Quando um método devolve E_FAIL, o CLR já não é utilizável no processo. As chamadas subsequentes para métodos de alojamento devolvem HOST_E_CLRNOTAVAILABLE. |
HOST_E_INVALIDOPERATION | Foi feita uma tentativa de libertar memória que não foi alocada através do anfitrião. |
Observações
VirtualFree
liberta páginas de memória virtual associadas ao lpAddress
parâmetro através de uma chamada anterior para a função IHostMemoryManager::VirtualAlloc . As tentativas de libertar memória que não foi alocada através do anfitrião devem devolver HOST_E_INVALIDOPERATION.
A semântica é idêntica à da implementação win32 do VirtualFree
. Para obter mais informações, veja a documentação da Plataforma do Windows.
Requisitos
Plataformas: Veja Requisitos do Sistema.
Cabeçalho: MSCorEE.h
Biblioteca: Incluído como um recurso no MSCorEE.dll
.NET Framework Versões: Disponível desde 2.0