IoPropagateActivityIdToThread 함수(ntddk.h)
IoPropagateActivityIdToThread 루틴은 IRP의 활동 ID를 현재 스레드와 연결합니다.
구문
NTSTATUS IoPropagateActivityIdToThread(
[in] PIRP Irp,
[out] LPGUID PropagatedId,
LPCGUID *OriginalId
);
매개 변수
[in] Irp
ID가 스레드로 전파되는 IRP입니다.
[out] PropagatedId
스레드에 ID를 저장하기 위해 호출자가 할당한 메모리에 대한 포인터입니다.
OriginalId
호출에서 성공적으로 반환되면 는 스레드에서 이전에 설정된 ID를 보유합니다. 드라이버는 동일한 스레드 컨텍스트 내에서 추적이 완료되면 이 포인터를 사용하여 IoClearActivityIdThread 를 호출해야 합니다.
반환 값
IoPropagateActivityIdToThread 는 호출이 성공하면 STATUS_SUCCESS 반환합니다. 가능한 오류 반환 값은 다음과 같습니다.
반환 코드 | 설명 |
---|---|
STATUS_NOT_FOUND | IRP에 연결된 ID가 없습니다. |
설명
이 루틴은 추적을 인식하고 작업자 스레드에서 I/O를 실행하는 드라이버에서 사용해야 합니다. 이러한 드라이버는 호출이 성공한 경우 스레드에서 컨트롤을 반환하기 전에 OriginalId를 사용하여 IoClearActivityIdThread를 호출해야 합니다.
I/O 작업 항목을 사용하는 드라이버는 I/O 하위 시스템이 이 경우 스레드에 활동 ID를 전파하는 작업을 처리하므로 이 루틴을 호출할 필요가 없습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 사용하여 사용할 수 있습니다. |
대상 플랫폼 | 유니버설 |
헤더 | ntddk.h(Ntddk.h 포함) |
라이브러리 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | 모든 수준 |