ICLRAppDomainResourceMonitor::GetCurrentSurvived 方法
取得自上次完整的阻斷式記憶體回收後存留下來,且由目前的應用程式定義域參考的位元組數目。
語法
HRESULT STDMETHODCALLTYPE GetCurrentSurvived(
[in] DWORD dwAppDomainId,
[out] ULONGLONG *pAppDomainBytesSurvived,
[out] ULONGLONG *pTotalBytesSurvived);
參數
dwAppDomainId
[in] 所要求應用程式定義域的識別碼。
pAppDomainBytesSurvived
[out] 自上次記憶體回收後存留下來,而且由此應用程式定義域保有的位元組數目指標。 在完整回收之後,此數字正確且完整。 在暫時回收之後,此數字可能不完整。 這個參數可以是 null
。
pRuntimeBytesSurvived
[out] 自上次記憶體回收後存留下來的位元組總數指標。 在完整回收之後,此數字代表保存於受控堆積中的位元組數目。 在暫時收集之後,此數字代表存在於短暫世代中的位元組數目。 這個參數可以是 null
。
傳回值
這個方法會傳回下列特定的 HRESULT,以及表示方法失敗的 HRESULT 錯誤。
HRESULT | 描述 |
---|---|
S_OK | 已成功完成命令。 |
COR_E_APPDOMAINUNLOADED | 應用程式定義域已卸載或不存在。 |
備註
統計資料只會在完整的阻斷式記憶體回收之後更新;也就是說,包含所有世代而且會在發生回收時停止應用程式的回收。 例如,GC.Collect() 方法多載就會執行完整的阻斷式回收。 並行記憶體回收會在背景發生,而且不會封鎖應用程式。
GetCurrentSurvived
方法是受控 AppDomain.MonitoringSurvivedMemorySize 屬性的非受控對等項目。
規格需求
平台:請參閱系統需求。
標頭:MetaHost.h
程式庫:包含作為 MSCorEE.dll 中的資源
.NET Framework版本:自 4 起可用