Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A szemétgyűjtési halomszegmens információinak á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
struct DacpHeapSegmentData
: ZeroInit<DacpHeapSegmentData>
{
CLRDATA_ADDRESS segmentAddr;
CLRDATA_ADDRESS allocated;
CLRDATA_ADDRESS committed;
CLRDATA_ADDRESS reserved;
CLRDATA_ADDRESS used;
CLRDATA_ADDRESS mem;
// pass this to request if non-null to get the next segments.
CLRDATA_ADDRESS next;
CLRDATA_ADDRESS gc_heap; // only filled in in server mode, otherwise NULL
// computed field: if this is the ephemeral segment highMark includes the ephemeral generation
CLRDATA_ADDRESS highAllocMark;
size_t flags;
CLRDATA_ADDRESS background_allocated;
HRESULT Request(ISOSDacInterface *sos, CLRDATA_ADDRESS addr, const DacpGcHeapDetails& heap)
{
HRESULT hr = sos->GetHeapSegmentData(addr, this);
// if this is the start segment, set highAllocMark too.
if (SUCCEEDED(hr))
{
// TODO: This needs to be put on the Dac side.
if (this->segmentAddr == heap.generation_table[0].start_segment)
highAllocMark = heap.alloc_allocated;
else
highAllocMark = allocated;
}
return hr;
}
};
Members
| Tag | Leírás |
|---|---|
segmentAddr |
A halomszegmens címe. |
allocated |
A szegmens lefoglalt részének címe. |
committed |
Az a cím, amelyig a szegmenshez le van kötve a memória. |
reserved |
Az a cím, amelyig a szegmens számára fenntartott memória van fenntartva. |
used |
Az a cím, amelyig a szegmenshez memória van használva. |
mem |
A szegmensmemória kezdőcíme. |
next |
A következő szegmens címe. Adja át ezt az értéket Request , ha nem null értékű a következő szegmens lekérése. |
gc_heap |
A GC-halom címe. Ez a tag csak kiszolgáló módban van kitöltve; ellenkező esetben az NULL. |
highAllocMark |
A magas foglalási jel. Ha ez a szegmens a rövid élettartamú szegmens, akkor ez az érték magában foglalja a rövid élettartamú generációt is. |
flags |
A halomszegmens jelzői. |
background_allocated |
A szegmenshez hozzárendelt háttérbeli csoportházirend-cím. |
Request |
A struktúra feltöltése hívással ISOSDacInterface::GetHeapSegmentData és számítással highAllocMark. |
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