共用方式為


IoPropagateActivityIdToThread 函式 (ntddk.h)

IoPropagateActivityIdToThread 例程會將來自 IRP 的活動識別碼與目前的線程產生關聯。

語法

NTSTATUS IoPropagateActivityIdToThread(
  [in]  PIRP    Irp,
  [out] LPGUID  PropagatedId,
        LPCGUID *OriginalId
);

參數

[in] Irp

標識碼將傳播至線程的 IRP。

[out] PropagatedId

呼叫端配置的記憶體指標,用來將標識符儲存在線程中。

OriginalId

成功從呼叫傳回時,保留先前在線程上設定的標識符。 驅動程式必須在相同的線程內容內完成追蹤時,使用這個指標呼叫 IoClearActivityIdThread

傳回值

如果呼叫成功,IoPropagateActivityIdToThread 會傳回STATUS_SUCCESS。 可能的錯誤傳回值包括下列專案。

傳回碼 描述
STATUS_NOT_FOUND IRP 沒有與其相關聯的標識碼。

言論

此例程應該由追蹤感知的驅動程式使用,並在背景工作線程上發出I/O。 請注意,如果呼叫成功,這類驅動程式必須先使用 OriginalId 呼叫 IoClearActivityIdThread,才能從線程傳回控制權。

使用 I/O 工作專案的驅動程式不需要呼叫此例程,因為 I/O 子系統會負責在該情況下將活動標識碼傳播至線程。

要求

要求 價值
最低支援的用戶端 從 Windows 8 開始提供。
目標平臺 普遍
標頭 ntddk.h (包括 Ntddk.h)
連結庫 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL 任何層級