Freigeben über


ICorProfilerInfo4::InitializeCurrentThread-Methode

Initialisiert den aktuellen Thread vor nachfolgenden Profiler-API-Aufrufen im selben Thread, sodass ein Deadlock vermieden werden kann.

Syntax

HRESULT InitializeCurrentThread ();  

Bemerkungen

Es wird empfohlen, InitializeCurrentThread für jeden Thread aufzurufen, der eine Profiler-API aufruft, solange es angehaltene Threads gibt. Diese Methode wird typischerweise von Samplingprofilern verwendet, die ihren eigenen Thread erstellen, um die ICorProfilerInfo2::DoStackSnapshot-Methode zum Durchführen von Stackwalks aufzurufen, während der Zielthread angehalten ist. Durch den einmaligen Aufruf von InitializeCurrentThread, wenn der Profiler den Samplingthread erstmals erstellt, können Profiler sicherstellen, dass die verzögerte threadbezogene Initialisierung, die die CLR andernfalls während des ersten Aufrufs von DoStackSnapshot durchführen würde, nun sicher erfolgen kann, sofern keine anderen Threads angehalten sind.

Hinweis

InitializeCurrentThread führt die Initialisierung im Voraus aus, um Aufgaben abzuschließen, die Sperren und möglicherweise einen Deadlock aufweisen. Rufen Sie InitializeCurrentThread nur auf, wenn es keine angehaltenen Threads gibt.

Anforderungen

Plattformen: Informationen finden Sie unter Systemanforderungen.

Header: CorProf.idl, CorProf.h

Bibliothek: CorGuids.lib

.NET Framework-Versionen: seit Version 4.5 verfügbar

Siehe auch