Compartir a través de


Función IoPropagateActivityIdToThread (ntddk.h)

La rutina IoPropagateActivityIdToThread asocia el identificador de actividad de un IRP con el 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 complete 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 IrP no tiene un identificador asociado.

Comentarios

Los controladores que tienen en cuenta el seguimiento y que emiten E/S en un subproceso de trabajo deben usar esta rutina. Tenga en cuenta que estos controladores deben llamar a IoClearActivityIdThread con 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 Value
Cliente mínimo compatible Disponible a partir de Windows 8.
Plataforma de destino Universal
Encabezado ntddk.h (incluya Ntddk.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL Cualquier nivel