Share via


Método IInterruptSync::RegisterServiceRoutine (portcls.h)

O RegisterServiceRoutine método registra uma ISR (rotina de serviço de interrupção) que deve ser chamada quando ocorre uma interrupção.

Sintaxe

NTSTATUS RegisterServiceRoutine(
  [in] PINTERRUPTSYNCROUTINE Routine,
  [in] PVOID                 DynamicContext,
  [in] BOOLEAN               First
);

Parâmetros

[in] Routine

Ponteiro para a rotina que deve ser chamada. Esse parâmetro é um ponteiro de função do tipo PINTERRUPTSYNCROUTINE (consulte IInterruptSync).

[in] DynamicContext

Especifica um valor de contexto que é passado para a rotina quando ele é chamado.

[in] First

Especifica se a rotina é adicionada à cabeça ou à parte final da lista de ISRs. Se TRUE, a rotina será adicionada no início da lista. Se FALSE, ele será adicionado na parte final.

Retornar valor

RegisterServiceRoutine retornará STATUS_SUCCESS se a chamada tiver sido bem-sucedida. Caso contrário, o método retorna um código de erro apropriado.

Comentários

Esse método adiciona a rotina especificada à lista de ISRs do objeto de sincronização. Quando ocorre uma interrupção, a rotina no início da lista é chamada primeiro e a rotina na parte final é chamada por último.

Requisitos

Requisito Valor
Plataforma de Destino Universal
Cabeçalho portcls.h (inclua Portcls.h)
IRQL PASSIVE_LEVEL