ICLRAppDomainResourceMonitor::GetCurrentSurvived メソッド
最後の完全なブロッキング ガベージ コレクションの実行後に残され、現在のアプリケーション ドメインによって参照されたバイト数を取得します。
構文
HRESULT STDMETHODCALLTYPE GetCurrentSurvived(
[in] DWORD dwAppDomainId,
[out] ULONGLONG *pAppDomainBytesSurvived,
[out] ULONGLONG *pTotalBytesSurvived);
パラメーター
dwAppDomainId
[in] 要求されたアプリケーション ドメインの ID。
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 以降で使用可能
関連項目
.NET