共用方式為


ICorProfilerCallback2::GarbageCollectionStarted 方法

更新:2007 年 11 月

向程式碼剖析工具告知,已啟動記憶體回收。

HRESULT GarbageCollectionStarted(
    [in] int cGenerations,
    [in, size_is(cGenerations), length_is(cGenerations)] BOOL generationCollected[],
    [in] COR_PRF_GC_REASON reason);

參數

  • cGenerations
    [in] generationCollected 陣列中的項目總數。

  • generationCollected
    [in] 布林值的陣列,如果對應至陣列索引的層代 (Generation) 正由此記憶體回收所回收,則為 true,否則為 false。

    此陣列是透過表示層代之 COR_PRF_GC_GENERATION 列舉型別的值進行索引。

  • reason
    [in] COR_PRF_GC_REASON 列舉型別的值,表示引發此記憶體回收的原因。

備註

所有記憶體回收有關的回呼都將在 GarbageCollectionStarted 回呼和相對應的 ICorProfilerCallback2::GarbageCollectionFinished 回呼之間發生。不需要在相同的執行緒上發生這些回呼。

GarbageCollectionStarted 呼叫期間,分析工具可以安全檢查在其原始位置上的物件。從 GarbageCollectionStarted 傳回之後,記憶體回收行程會開始移動物件。在分析工具從此回收傳回之後,分析工具應將所有物件 ID 都視為無效,直到收到 ICorProfilerCallback2::GarbageCollectionFinished 回呼為止。

需求

**平台:**請參閱 .NET Framework 系統需求

**標頭:**CorProf.idl

**程式庫:**CorGuids.lib

**.NET Framework 版本:**3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0

請參閱

參考

ICorProfilerCallback

ICorProfilerCallback2