Condividi tramite


Metodo IHostMemoryManager::VirtualQuery

Funziona come wrapper logico per la funzione Win32 corrispondente. L'implementazione Win32 della funzione VirtualQuery recupera informazioni su un intervallo di pagine nello spazio di indirizzi virtuali del processo chiamante.

HRESULT VirtualQuery (
    [in]  void*    lpAddress,
    [out] void*    lpBuffer,
    [in]  SIZE_T   dwLength,
    [out] SIZE_T*  pResult
);

Parametri

  • lpAddress
    [in] Puntatore all'indirizzo nella memoria virtuale in cui eseguire la query.

  • lpBuffer
    [out] Puntatore a una struttura contenente informazioni sull'area di memoria specificata.

  • dwLength
    [in] Dimensioni in byte del buffer a cui punta lpBuffer.

  • pResult
    [out] Puntatore al numero di byte restituiti dal buffer delle informazioni.

Valore restituito

HRESULT

Oggetto di descrizione

S_OK

VirtualQuery ha restituito correttamente un valore.

HOST_E_CLRNOTAVAILABLE

Common Language Runtime non è stato caricato in un processo oppure si trova in uno stato in cui non è possibile eseguire codice gestito né elaborare correttamente la chiamata.

HOST_E_TIMEOUT

Timeout della chiamata.

HOST_E_NOT_OWNER

Il chiamante non è il proprietario del blocco.

HOST_E_ABANDONED

Un evento è stato annullato mentre un thread o un fiber bloccato era in attesa di tale evento.

E_FAIL

Si è verificato un errore irreversibile sconosciuto. Se un metodo restituisce E_FAIL, CLR non sarà più utilizzabile all'interno del processo. Le successive chiamate ai metodi di hosting restituiranno HOST_E_CLRNOTAVAILABLE.

Note

VirtualQuery fornisce le informazioni relative a un intervallo di pagine nello spazio dell'indirizzo virtuale del processo chiamante. Questa implementazione imposta il valore del parametro pResult sul numero di byte restituiti nel buffer delle informazioni e restituisce un valore HRESULT. Nella funzione Win32 VirtualQuery, il valore restituito è la dimensione del buffer. Per ulteriori informazioni, vedere la documentazione relativa alla piattaforma Windows.

Nota importanteImportante

L'implementazione di VirtualQuery del sistema operativo non è soggetta a deadlock e può essere eseguita fino al completamento con i thread casuali sospesi nel codice utente.Si consiglia di implementare la versione host di questo metodo con attenzione.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: MSCorEE.h

Libreria: inclusa come risorsa in MSCorEE.dll

Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Vedere anche

Riferimenti

Interfaccia IHostMemoryManager