Compartilhar via


Função IoPropagateActivityIdToThread (ntddk.h)

A rotina de IoPropagateActivityIdToThread associa a ID da atividade de um IRP ao thread atual.

Sintaxe

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

Parâmetros

[in] Irp

O IRP cuja ID será propagada para o thread.

[out] PropagatedId

Um ponteiro para a memória alocada pelo chamador para armazenar a ID no thread.

OriginalId

Após retornar com êxito da chamada, mantém a ID que foi definida anteriormente no thread. O driver deve chamar IoClearActivityIdThread com esse ponteiro quando o rastreamento é concluído no mesmo contexto de thread.

Valor de retorno

IoPropagateActivityIdToThread retornará STATUS_SUCCESS se a chamada for bem-sucedida. Os valores de retorno de erro possíveis incluem o seguinte.

Código de retorno Descrição
STATUS_NOT_FOUND O IRP não tem uma ID associada a ele.

Observações

Essa rotina deve ser usada por drivers que estão rastreando com reconhecimento e emitindo E/S em um thread de trabalho. Observe que esses drivers devem chamar IoClearActivityIdThread com o OriginalId antes de retornarem o controle do thread, se a chamada tiver sido bem-sucedida.

Os drivers que usam itens de trabalho de E/S não precisam chamar essa rotina porque o subsistema de E/S cuida da propagação de IDs de atividade para threads nesse caso.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível a partir do Windows 8.
da Plataforma de Destino Universal
cabeçalho ntddk.h (inclua Ntddk.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL Qualquer nível