定義垃圾回收堆分析資訊的傳輸緩衝區。
Note
此 API 原本是針對運行時間內部使用所設計。 雖然現在支援第三方使用,但建議您盡可能使用 ICorDebug 和 ICorProfiler API。
Syntax
struct DacpGcHeapAnalyzeData
: ZeroInit<DacpGcHeapAnalyzeData>
{
CLRDATA_ADDRESS heapAddr; // Only filled in in server mode, otherwise NULL
CLRDATA_ADDRESS internal_root_array;
ULONG64 internal_root_array_index;
BOOL heap_analyze_success;
// Use this for workstation mode (DacpGcHeapDat.bServerMode==FALSE).
HRESULT Request(ISOSDacInterface *sos)
{
return sos->GetHeapAnalyzeStaticData(this);
}
// Use this for Server mode, as there are multiple heaps,
// and you need to pass a heap address in addr.
HRESULT Request(ISOSDacInterface *sos, CLRDATA_ADDRESS addr)
{
return sos->GetHeapAnalyzeData(addr, this);
}
};
Members
| 會員 | 說明 |
|---|---|
heapAddr |
GC 堆的位址。 此成員僅在伺服器模式下被填補;否則,為 NULL。 |
internal_root_array |
內部根陣列的位址。 |
internal_root_array_index |
索引進入內部根陣列。 |
heap_analyze_success |
一個表示堆積分析是否成功的值。 |
Request |
透過呼叫 ISOSDacInterface::GetHeapAnalyzeStaticData 或 ISOSDacInterface::GetHeapAnalyzeData填充結構。 |
Remarks
此結構位於運行時間內,不會透過任何標頭或庫檔案公開。 使用時,請依上述定義結構。
要求
平台:請參閱系統需求。
標題: 沒
圖書館: 沒
.NET Framework 版本:自 4.7 版本起可用