取得在最後一次完整且阻塞垃圾回收後存留的位元組數,這些位元組被目前的應用程式域所參考。
語法
HRESULT STDMETHODCALLTYPE GetCurrentSurvived(
[in] DWORD dwAppDomainId,
[out] ULONGLONG *pAppDomainBytesSurvived,
[out] ULONGLONG *pTotalBytesSurvived);
參數
dwAppDomainId [在]請求的應用程式網域的 ID。
pAppDomainBytesSurvived [出]指向該應用域所保留的最後垃圾回收後存活的位元組數指標。 經過完整收集後,這個數字是準確且完整的。 經過短暫的收集後,這個數字可能不完整。 這個參數可以是 null。
pRuntimeBytesSurvived [出]指向上次垃圾回收中存活的總位元組數指標。 在完整收集後,這個數字代表被管理堆積中所保留的位元組數量。 在短暫收集後,這個數字代表在短暫世代中仍被存活的位元組數量。 這個參數可以是 null。
傳回值
這個方法會傳回下列特定 HRESULT ,以及指出方法失敗的 HRESULT 錯誤。
| HRESULT | 說明 |
|---|---|
| S_OK | 方法已順利完成。 |
| COR_E_APPDOMAINUNLOADED | 應用程式域已被卸載或不存在。 |
備註
統計資料只有在完成完整的阻塞性垃圾回收後才會更新;也就是說,包含所有世代的集合,並在收集過程中停止應用。 例如, GC.Collect() 方法過載會執行完整的區塊收集。 同時進行的垃圾回收會在背景進行,不會阻擋應用程式。
此 GetCurrentSurvived 方法相當於非 AppDomain.MonitoringSurvivedMemorySize 管理財產。
要求
平台:請參閱系統需求。
標題: MetaHost.h
圖書館: MSCorEE.dll 中納入資源
.NET Framework 版本: 自 4 日起可用