IHostMemoryManager::VirtualQuery – metoda
Slouží jako logická obálka pro odpovídající funkci Win32. Implementace VirtualQuery
Win32 načte informace o rozsahu stránek ve virtuálním adresním prostoru volajícího procesu.
Syntaxe
HRESULT VirtualQuery (
[in] void* lpAddress,
[out] void* lpBuffer,
[in] SIZE_T dwLength,
[out] SIZE_T* pResult
);
Parametry
lpAddress
[v] Ukazatel na adresu ve virtuální paměti, která má být dotazována.
lpBuffer
[out] Ukazatel na strukturu, která obsahuje informace o zadané oblasti paměti.
dwLength
[v] Velikost vyrovnávací paměti v bajtech, na kterou lpBuffer
odkazuje.
pResult
[out] Ukazatel na počet bajtů vrácených informační vyrovnávací pamětí.
Návratová hodnota
HRESULT | Description |
---|---|
S_OK | VirtualQuery úspěšně vráceno. |
HOST_E_CLRNOTAVAILABLE | Modul CLR (Common Language Runtime) nebyl načten do procesu nebo je ve stavu, ve kterém nemůže spustit spravovaný kód nebo úspěšně zpracovat volání. |
HOST_E_TIMEOUT | Časový limit hovoru vypršel. |
HOST_E_NOT_OWNER | Volající zámek nevlastní. |
HOST_E_ABANDONED | Událost byla zrušena, zatímco na ni čekalo blokované vlákno nebo vlákno. |
E_FAIL | Došlo k neznámému závažnému selhání. Když metoda vrátí E_FAIL, clr již není možné v rámci procesu použít. Následná volání metod hostování vrátí HOST_E_CLRNOTAVAILABLE. |
Poznámky
VirtualQuery
poskytuje informace o rozsahu stránek ve virtuálním adresním prostoru volajícího procesu. Tato implementace nastaví hodnotu parametru pResult
na počet bajtů vrácených v informační vyrovnávací paměti a vrátí hodnotu HRESULT. Ve funkci Win32 VirtualQuery
je návratovou hodnotou velikost vyrovnávací paměti. Další informace najdete v dokumentaci k platformě Windows.
Důležité
Implementace operačního VirtualQuery
systému nedochází k zablokování a může běžet k dokončení s náhodnými vlákny pozastavenými v uživatelském kódu. Při implementaci hostované verze této metody buďte velmi opatrní.
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: MSCorEE.h
Knihovny: Zahrnutý jako prostředek v MSCorEE.dll
Verze rozhraní .NET Framework: K dispozici od verze 2.0