Delen via


Methode ICorProfilerInfo13::CreateHandle

Hiermee maakt u een ingang waarmee een opgegeven object wordt verpakt.

Syntaxis

    HRESULT CreateHandle(
                [in] ObjectID            object,
                [in] COR_PRF_HANDLE_TYPE type,
                [out] ObjectHandleID*    pHandle);

Parameters

object
[in] De objectverwijzing om te verpakken met een ingang.

type
[in] Het type ingang dat moet worden gemaakt.

pHandle
[uit] Een aanroeper opgegeven aanwijzer die verwijst naar de greep die is gemaakt om de opgegeven objectterugloop te verpakken.

Opmerkingen

Hieronder volgen de verwachte gebruiksgegevens, afhankelijk van de opgegeven COR_PRF_HANDLE_TYPE waarde:

  • COR_PRF_HANDLE_TYPE_WEAK: Controleert of een object gedurende een bepaalde periode in het geheugen blijft. Als het verpakte object is verzameld, retourneert ICorProfilerInfo13::GetObjectIDFromHandle een null ObjectID.
  • COR_PRF_HANDLE_TYPE_STRONG: Hiermee wordt afgedwongen dat een object afvalverzamelingen overleeft, zelfs als er geen ander object ernaar verwijst.
  • COR_PRF_HANDLE_TYPE_PINNED: Hetzelfde als een sterke ingang, maar zorgt er ook voor dat het object op hetzelfde adres in het geheugen blijft tijdens garbagecollecties.

Om ervoor te zorgen dat de object verwijzing geldig is, moet deze methode worden aangeroepen vanuit een ICorProfilerCallback methode zoals ICorProfilerCallback::ObjectAllocated. U kunt niet bellen CreateHandle vanuit een EventPipe asynchrone listener. Het object dat is ontvangen via een nettolading van een gebeurtenis, is mogelijk verwijderd of verplaatst in het geheugen als er een garbagecollection is opgetreden tussen het moment dat de gebeurtenis werd verzonden en wanneer deze werd ontvangen.

Vergeet niet om ICorProfilerInfo13::D estroyHandle aan te roepen zodra een gemaakte ingang niet meer nodig is. Het wordt aanbevolen om minder dan 4096 ingangen tegelijk toe te wijzen om te voorkomen dat de prestaties van de garbagecollector worden beïnvloed.

Vereisten

Platforms: Zie ondersteunde besturingssystemen van .NET.

Koptekst: CorProf.idl, CorProf.h

.NET-versies: beschikbaar sinds .NET 7.0

Zie ook