Método IHostMemoryManager::VirtualFree
Serve como um wrapper lógico para a função Win32 correspondente. A implementação do Win32 de versões do VirtualFree
, anula, ou libera e anula uma região de páginas dentro do espaço de endereço virtual 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 que serão liberadas.
dwSize
[in] O tamanho, em bytes, da região que será liberada.
dwFreeType
[in] O tipo de operação de liberação.
Valor Retornado
HRESULT | Descrição |
---|---|
S_OK | VirtualFree retornado com êxito. |
HOST_E_CLRNOTAVAILABLE | O CLR (Common Language Runtime) não foi carregado em um processo ou está em um estado no qual não pode executar o código gerenciado ou processar a chamada com sucesso. |
HOST_E_TIMEOUT | Uma chamada atingiu o tempo limite. |
HOST_E_NOT_OWNER | O chamador não possui o bloqueio. |
HOST_E_ABANDONED | Um evento foi cancelado enquanto uma fibra ou um thread bloqueado estava esperando por ele. |
E_FAIL | Uma falha catastrófica desconhecida ocorreu. Quando um método retorna E_FAIL, o CLR não pode mais ser usado no processo. Chamadas subsequentes para métodos de hospedagem retornam HOST_E_CLRNOTAVAILABLE. |
HOST_E_INVALIDOPERATION | Foi feita uma tentativa de liberar memória que não foi alocada por meio do host. |
Comentários
VirtualFree
libera as páginas de memória virtual associadas ao parâmetro lpAddress
por meio de uma chamada anterior para a função IHostMemoryManager::VirtualAlloc. As tentativas de liberar a memória que não foi alocada por meio do host deverão retornar HOST_E_INVALIDOPERATION.
A semântica é idêntica à implementação do Win32 de VirtualFree
. Para obter mais informações, confira a documentação da plataforma Windows.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: MSCorEE.h
Biblioteca: incluída como um recurso no MSCorEE.dll
Versões do .NET Framework: disponíveis desde 2.0