分享方式:


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 起可用

另請參閱