DacpThreadData 結構

定義執行執行緒資訊的傳輸緩衝區。

Note

此 API 原本是針對運行時間內部使用所設計。 雖然現在支援第三方使用,但建議您盡可能使用 ICorDebugICorProfiler API。

Syntax

struct DacpThreadData : ZeroInit<DacpThreadData>
{
    DWORD corThreadId;
    DWORD osThreadId;
    int state;
    ULONG preemptiveGCDisabled;
    CLRDATA_ADDRESS allocContextPtr;
    CLRDATA_ADDRESS allocContextLimit;
    CLRDATA_ADDRESS context;
    CLRDATA_ADDRESS domain;
    CLRDATA_ADDRESS pFrame;
    DWORD lockCount;
    CLRDATA_ADDRESS firstNestedException; // Pass this pointer to DacpNestedExceptionInfo
    CLRDATA_ADDRESS teb;
    CLRDATA_ADDRESS fiberData;
    CLRDATA_ADDRESS lastThrownObjectHandle;
    CLRDATA_ADDRESS nextThread;

    HRESULT Request(ISOSDacInterface *sos, CLRDATA_ADDRESS addr)
    {
        return sos->GetThreadData(addr, this);
    }
};

Members

會員 說明
corThreadId 管理執行緒識別碼。
osThreadId 作業系統執行緒識別碼。
state 執行緒狀態標記。
preemptiveGCDisabled 一個表示該執行緒是否停用搶占式垃圾回收的值。
allocContextPtr 執行緒目前的配置上下文指標。
allocContextLimit 執行緒的配置上下文限制。
context 執行緒上下文的地址。
domain 執行緒的應用程式域位址。
pFrame 目前畫面的地址。
lockCount 線所持有的鎖數。
firstNestedException 第一個巢狀例外的位址。 將此指標傳給 DacpNestedExceptionInfo
teb 執行緒環境區塊的位址。
fiberData 光纖資料的地址。
lastThrownObjectHandle 最後一個丟到線索上的物品的把手。
nextThread 執行執行緒清單中下一個執行緒的位址。
Request 透過呼叫 ISOSDacInterface::GetThreadData來填充結構。

Remarks

此結構位於運行時間內,不會透過任何標頭或庫檔案公開。 使用時,請依上述定義結構。

要求

平台:請參閱系統需求
標題:
圖書館:
.NET Framework 版本:自 4.7 版本起可用

也請參閱