Compartilhar via


Função KeUnstackDetachProcess (ntifs.h)

A rotina KeUnstackDetachProcess desanexa o thread atual do espaço de endereço de um processo e restaura o estado de anexação anterior.

Cuidado use essa rotina com extrema cautela. (Consulte a seção Comentários a seguir.)
 

Sintaxe

void KeUnstackDetachProcess(
  [in] PRKAPC_STATE ApcState
);

Parâmetros

[in] ApcState

Ponteiro opaco para uma estrutura de KAPC_STATE que foi retornada de uma chamada anterior para KeStackAttachProcess .

Valor de retorno

Nenhum

Observações

Cada chamada bem-sucedida para KeStackAttachProcess deve ser correspondida por uma chamada subsequente para KeUnstackDetachProcess.

Observação Anexar um thread a um processo diferente pode impedir a conclusão de operações de E/S assíncronas e pode causar deadlocks. Em geral, as linhas de código entre a chamada para KeStackAttachProcess e a chamada para KeUnstackDetachProcess devem ser muito simples e não devem chamar rotinas complexas ou enviar IRPs para outros drivers.
 

Para obter mais informações sobre como usar threads do sistema e gerenciar a sincronização em um contexto de thread não secundário, consulte Threads de Driver, Objetos Dispatcher e Recursos.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000
da Plataforma de Destino Universal
cabeçalho ntifs.h (inclua Ntifs.h, Fltkernel.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Consulte também

IoGetCurrentProcess

IoGetRequestorProcess

IoThreadToProcess

KeGetCurrentIrql

KeGetCurrentThread

KeStackAttachProcess

PsGetCurrentProcess

PsGetCurrentThread