Método IHostMemoryManager::VirtualQuery
Serve como um wrapper lógico para a função Win32 correspondente. A implementação win32 do VirtualQuery
obtém informações sobre um intervalo de páginas no espaço de endereços virtual do processo de chamada.
Sintaxe
HRESULT VirtualQuery (
[in] void* lpAddress,
[out] void* lpBuffer,
[in] SIZE_T dwLength,
[out] SIZE_T* pResult
);
Parâmetros
lpAddress
[in] Um ponteiro para o endereço na memória virtual a consultar.
lpBuffer
[fora] Um ponteiro para uma estrutura que contém informações sobre a região de memória especificada.
dwLength
[in] O tamanho, em bytes, da memória intermédia que lpBuffer
aponta para.
pResult
[fora] Um ponteiro para o número de bytes devolvidos pela memória intermédia de informações.
Devolver Valor
HRESULT | Description |
---|---|
S_OK | VirtualQuery 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. |
Observações
VirtualQuery
fornece informações sobre um intervalo de páginas no espaço de endereços virtual do processo de chamada. Esta implementação define o valor do pResult
parâmetro para o número de bytes devolvidos na memória intermédia de informações e devolve um valor HRESULT. Na função Win32 VirtualQuery
, o valor devolvido é o tamanho da memória intermédia. Para obter mais informações, veja a documentação da Plataforma do Windows.
Importante
A implementação do sistema operativo de VirtualQuery
não incorre em impasse e pode ser executada até à conclusão com threads aleatórios suspensos no código do utilizador. Tenha muito cuidado ao implementar uma versão alojada deste método.
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