ICorProfilerInfo2::GetThreadStaticAddress 方法

取得指定執行緒靜態欄位的位址,這位於指定執行緒的範圍內。

語法

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

參數

classId
[in] 類別的識別碼,其中包含要求的執行緒靜態欄位。

fieldToken
[in] 所要求執行緒靜態欄位的中繼資料語彙基元。

threadId
[in] 執行緒的識別碼,該執行緒是所要求靜態欄位的範圍。

ppAddress
[out] 指定執行緒內靜態欄位位址的指標。

備註

GetThreadStaticAddress 方法會傳回下列其中一項:

  • 如果指定靜態欄位尚未在指定內容中獲指派位址,則為 CORPROF_E_DATAINCOMPLETE HRESULT。

  • 可能位於記憶體回收堆積中的物件位址。 這些位址可能會在記憶體回收之後變成無效,因此在記憶體回收之後,分析工具不應該假設其有效。

在類別的類別建構函式完成之前,GetThreadStaticAddress 將會針對其所有靜態欄位傳回 CORPROF_E_DATAINCOMPLETE,雖然部分靜態欄位可能已經初始化並且對記憶體回收物件進行根處理。

規格需求

平台:請參閱系統需求

標頭: CorProf.idl、CorProf.h

程式庫:CorGuids.lib

.NET Framework版本:自 2.0 起可用

另請參閱