Metodo IHostMemoryManager::VirtualQuery
Funge da wrapper logico per la funzione Win32 corrispondente. L'implementazione win32 di VirtualQuery
recupera informazioni su un intervallo di pagine nello spazio indirizzi virtuale del processo di chiamata.
Sintassi
HRESULT VirtualQuery (
[in] void* lpAddress,
[out] void* lpBuffer,
[in] SIZE_T dwLength,
[out] SIZE_T* pResult
);
Parametri
lpAddress
[in] Puntatore all'indirizzo in memoria virtuale da eseguire query.
lpBuffer
[out] Puntatore a una struttura contenente informazioni sull'area di memoria specificata.
dwLength
[in] Dimensioni, in byte, del buffer a cui lpBuffer
punta.
pResult
[out] Puntatore al numero di byte restituiti dal buffer delle informazioni.
Valore restituito
HRESULT | Descrizione |
---|---|
S_OK | VirtualQuery restituito correttamente. |
HOST_E_CLRNOTAVAILABLE | Common Language Runtime (CLR) non è stato caricato in un processo oppure CLR si trova in uno stato in cui non è possibile eseguire codice gestito o elaborare correttamente la chiamata. |
HOST_E_TIMEOUT | Timeout della chiamata. |
HOST_E_NOT_OWNER | Il chiamante non possiede il blocco. |
HOST_E_ABANDONED | Un evento è stato annullato mentre un thread bloccato o fibra era in attesa su di esso. |
E_FAIL | Si è verificato un errore irreversibile sconosciuto. Quando un metodo restituisce E_FAIL, CLR non è più utilizzabile all'interno del processo. Le chiamate successive ai metodi di hosting restituiscono HOST_E_CLRNOTAVAILABLE. |
Commenti
VirtualQuery
fornisce informazioni su un intervallo di pagine nello spazio indirizzi virtuale del processo chiamante. Questa implementazione imposta il valore del pResult
parametro 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 altre informazioni, vedere la documentazione di Windows Platform.
Importante
L'implementazione del sistema operativo di VirtualQuery
non comporta deadlock e può essere eseguita al completamento con thread casuali sospesi nel codice utente. Prestare attenzione quando si implementa una versione ospitata di questo metodo.
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: MSCorEE.h
Libreria: Incluso come risorsa in MSCorEE.dll
Versioni di .NET Framework: Disponibile da 2.0