Methode ICorProfilerCallback::RootReferences
Hiermee wordt de profiler gewaarschuwd met informatie over hoofdverwijzingen na garbagecollection.
Syntaxis
HRESULT RootReferences(
[in] ULONG cRootRefs,
[in, size_is(cRootRefs)] ObjectID rootRefIds[] );
Parameters
cRootRefs
[in] Het aantal verwijzingen in de rootRefIds
matrix.
rootRefIds
[in] Een matrix met object-id's die verwijzen naar een statisch object of een object op de stack.
Opmerkingen
Zowel RootReferences
als ICorProfilerCallback2::RootReferences2 worden aangeroepen om de profiler op de hoogte te stellen. Profilers implementeren normaal gesproken het ene of het andere, maar niet beide, omdat de doorgegeven RootReferences2
informatie een superset is van de informatie die is doorgegeven in RootReferences
.
Het is mogelijk dat de rootRefIds
matrix een null-object bevat. Alle objectverwijzingen die op de stapel zijn gedeclareerd, worden bijvoorbeeld behandeld als wortels door de garbagecollector en worden altijd gerapporteerd.
De object-id's die door RootReferences
worden geretourneerd, zijn niet geldig tijdens de callback zelf, omdat de garbagecollection zich mogelijk midden in het verplaatsen van objecten van oude adressen naar nieuwe adressen bevindt. Daarom mogen profilers geen objecten inspecteren tijdens een RootReferences
aanroep. Wanneer ICorProfilerCallback2::GarbageCollectionFinished wordt aangeroepen, zijn alle objecten verplaatst naar hun nieuwe locaties en kunnen ze veilig worden geïnspecteerd.
Vereisten
Platforms: Zie Systeemvereisten.
Header: CorProf.idl, CorProf.h
Bibliotheek: CorGuids.lib
.NET Framework versies: beschikbaar sinds 2.0