DacpGcHeapDetails struktúra

A részletes szemétgyűjtési halomadatok átviteli pufferét határozza meg.

Note

Ezt az API-t eredetileg belső használatra tervezték a futtatókörnyezetben. Bár most már harmadik fél általi használat esetén is támogatott, javasoljuk, hogy lehetőség szerint működj együtt az ICorDebug API-kkal és az API-kkalICorProfiler.

Syntax

#define DAC_NUMBERGENERATIONS 4

struct DacpGcHeapDetails : ZeroInit<DacpGcHeapDetails>
{
    CLRDATA_ADDRESS heapAddr; // Only filled in in server mode, otherwise NULL
    CLRDATA_ADDRESS alloc_allocated;

    CLRDATA_ADDRESS mark_array;
    CLRDATA_ADDRESS current_c_gc_state;
    CLRDATA_ADDRESS next_sweep_obj;
    CLRDATA_ADDRESS saved_sweep_ephemeral_seg;
    CLRDATA_ADDRESS saved_sweep_ephemeral_start;
    CLRDATA_ADDRESS background_saved_lowest_address;
    CLRDATA_ADDRESS background_saved_highest_address;

    DacpGenerationData generation_table [DAC_NUMBERGENERATIONS]; 
    CLRDATA_ADDRESS ephemeral_heap_segment;        
    CLRDATA_ADDRESS finalization_fill_pointers [DAC_NUMBERGENERATIONS + 3];
    CLRDATA_ADDRESS lowest_address;
    CLRDATA_ADDRESS highest_address;
    CLRDATA_ADDRESS card_table;

    // Use this for workstation mode (DacpGcHeapData.bServerMode==FALSE).
    HRESULT Request(ISOSDacInterface *sos)
    {
        return sos->GetGCHeapStaticData(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->GetGCHeapDetails(addr, this);
    }
};

Members

Tag Leírás
heapAddr A GC-halom címe. Ez a tag csak kiszolgáló módban van kitöltve; ellenkező esetben az NULL.
alloc_allocated A halom aktuális foglalási mutatója.
mark_array A jeltömb címe.
current_c_gc_state Az aktuális tömörítési GC-állapot címe.
next_sweep_obj A következő elsöprő objektum címe.
saved_sweep_ephemeral_seg A mentett rövid élettartamú szegmens címe egy takarításhoz.
saved_sweep_ephemeral_start A mentett rövid élettartamú takarítási kezdés címe.
background_saved_lowest_address A háttérbeli csoportházirend-állapothoz mentett legalacsonyabb cím.
background_saved_highest_address A háttérbeli csoportházirend-állapothoz mentett legmagasabb cím.
generation_table DacpGenerationData-struktúrák tömbje az egyes GC-generációk adataival.
ephemeral_heap_segment A rövid élettartamú halomszegmens címe.
finalization_fill_pointers A véglegesítési kitöltési mutatók tömbje.
lowest_address A halom legalsó címe.
highest_address A halom legmagasabb címe.
card_table A GC-kártyatábla címe.
Request A struktúra feltöltése a munkaállomás GC-jének vagy ISOSDacInterface::GetGCHeapDetails a kiszolgálói GC-nek a meghívásávalISOSDacInterface::GetGCHeapStaticData.

Remarks

Ez a struktúra a futtatókörnyezetben található, és nem jelenik meg élőfejeken vagy tárfájlokon keresztül. A használathoz definiálja a struktúrát a fent megadott módon.

Követelmények

Platformok: Lásd a rendszerkövetelményeket.
Fejléc: Egyik sem
Könyvtár: Egyik sem
.NET keretrendszerverziók: 4.7 óta érhető el

Lásd még