Compartir a través de


Función IoPropagateActivityIdToThread (ntddk.h)

La rutina IoPropagateActivityIdToThread asocia el identificador de actividad de un IRP al subproceso actual.

Sintaxis

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

Parámetros

[in] Irp

IRP cuyo identificador se propagará al subproceso.

[out] PropagatedId

Puntero a la memoria asignada por el autor de la llamada para almacenar el identificador en el subproceso.

OriginalId

Tras volver correctamente desde la llamada, contiene el identificador que se estableció anteriormente en el subproceso. El controlador debe llamar a ioClearActivityIdThread con este puntero cuando se completa el seguimiento en el mismo contexto de subproceso.

Valor devuelto

ioPropagateActivityIdToThread devuelve STATUS_SUCCESS si la llamada se realiza correctamente. Entre los posibles valores devueltos de error se incluyen los siguientes.

Código devuelto Descripción
STATUS_NOT_FOUND El IRP no tiene un identificador asociado.

Observaciones

Los controladores que están realizando el seguimiento deben usar esta rutina y emitir E/S en un subproceso de trabajo. Tenga en cuenta que estos controladores deben llamar a ioClearActivityIdThread con el OriginalId antes de devolver el control del subproceso, si la llamada se realizó correctamente.

Los controladores que usan elementos de trabajo de E/S no necesitan llamar a esta rutina porque el subsistema de E/S se encarga de propagar los identificadores de actividad a los subprocesos en ese caso.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible a partir de Windows 8.
de la plataforma de destino de Universal
encabezado de ntddk.h (incluya Ntddk.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL Cualquier nivel