Freigeben über


ICorProfilerInfo2::GetThreadStaticAddress-Methode

Ruft die Adresse des angegebenen für den Thread statischen Felds im Bereich des angegebenen Threads ab.

Syntax

HRESULT GetThreadStaticAddress(  
    [in] ClassID     classId,  
    [in] mdFieldDef  fieldToken,  
    [in] ThreadID    threadId,  
    [out] void       **ppAddress);  

Parameter

classId
[in] Die ID der Klasse, die das angeforderte für den Thread statische Feld enthält.

fieldToken
[in] Das Metadatentoken für das angeforderte für den Thread statische Feld.

threadId
[in] Die ID des Threads, die den Geltungsbereich für das angeforderte statische Feld darstellt.

ppAddress
[out] Ein Zeiger auf die Adresse des statischen Felds, das sich innerhalb des angegebenen Threads befindet.

Bemerkungen

Die GetThreadStaticAddress-Methode kann einen der folgenden Werte zurückgeben:

  • CORPROF_E_DATAINCOMPLETE HRESULT, wenn dem angegebenen statischen Feld im angegebenen Kontext keine Adresse zugewiesen wurde.

  • Die Adressen von Objekten, die sich möglicherweise im Garbage Collection-Heap befinden. Diese Adressen können nach der Garbage Collection ungültig werden. Daher sollten Profiler nach der Garbage Collection nicht davon ausgehen, dass sie gültig sind.

Bevor der Klassenkonstruktor einer Klasse abgeschlossen wird, gibt GetThreadStaticAddress CORPROF_E_DATAINCOMPLETE für alle statischen Felder zurück, obwohl einige der statischen Felder möglicherweise bereits initialisiert wurden und Garbage Collection-Objekte rooten.

Anforderungen

Plattformen: Informationen finden Sie unter Systemanforderungen.

Header: CorProf.idl, CorProf.h

Bibliothek: CorGuids.lib

.NET Framework-Versionen: Seit 2.0 verfügbar.

Siehe auch