Структура DacpGcHeapAnalyzeData

Определяет буфер транспорта для сведений об анализе кучи сборки мусора.

Note

Этот API изначально был разработан для внутреннего использования во время выполнения. Хотя она теперь поддерживается для 3-го стороннего использования, мы рекомендуем по возможности работать с ICorDebugICorProfiler и 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: доступно с версии 4.7

См. также