IHostMemoryManager::VirtualQuery 方法
做為對應 Win32 函式的邏輯包裝函式。 VirtualQuery
的 Win32 實作會擷取呼叫處理序的虛擬位址空間中的頁面範圍相關資訊。
語法
HRESULT VirtualQuery (
[in] void* lpAddress,
[out] void* lpBuffer,
[in] SIZE_T dwLength,
[out] SIZE_T* pResult
);
參數
lpAddress
[in] 要查詢之虛擬記憶體中的位址指標。
lpBuffer
[out] 結構的指標,其中包含指定的記憶體區域相關資訊。
dwLength
[in] lpBuffer
指向的緩衝區大小 (以位元組為單位)。
pResult
[out] 資訊緩衝區所傳回的位元組數目指標。
傳回值
HRESULT | 描述 |
---|---|
S_OK | VirtualQuery 已成功傳回。 |
HOST_E_CLRNOTAVAILABLE | 通用語言執行平台 (CLR) 尚未載入處理序,或 CLR 處於無法成功執行受控程式碼或處理呼叫的狀態。 |
HOST_E_TIMEOUT | 呼叫逾時。 |
HOST_E_NOT_OWNER | 呼叫端未擁有鎖定。 |
HOST_E_ABANDONED | 封鎖的執行緒或 Fiber 在其上等候時,事件遭到取消。 |
E_FAIL | 發生未知的重大失敗。 如果方法傳回 E_FAIL,則 CLR 就無法再用於處理序。 後續對裝載方法發出的呼叫會傳回 HOST_E_CLRNOTAVAILABLE。 |
備註
VirtualQuery
提供呼叫處理序的虛擬位址空間中的頁面範圍相關資訊。 此實作會將 pResult
參數的值設定為資訊緩衝區中傳回的位元組數目,並傳回 HRESULT 值。 在 Win32 VirtualQuery
函式中,傳回值是緩衝區大小。 如需詳細資訊,請參閱 Windows 平台文件。
重要
作業系統的 VirtualQuery
實作不會產生死結,而且可透過使用者程式碼中暫止的隨機執行緒執行到完成。 實作此方法的裝載版本時,請格外小心。
規格需求
平台:請參閱系統需求。
標題: MSCorEE.h
程式庫:包含作為 MSCorEE.dll 中的資源
.NET Framework版本:自 2.0 起可用