Método IPortWaveCyclic::Notify (portcls.h)
O Notify
método notifica o driver de porta de que ocorreu uma interrupção indicando o progresso do ponteiro DMA. Ele deve ser chamado da ISR (rotina de serviço de interrupção) do driver de miniport.
Sintaxe
void Notify(
[in] PSERVICEGROUP ServiceGroup
);
Parâmetros
[in] ServiceGroup
Ponteiro para o objeto IServiceGroup do driver de miniport.
Retornar valor
Nenhum
Comentários
Esse método é vital para um tempo preciso. Os drivers de miniporto normalmente chamam esse método em resposta a uma interrupção de notificação depois de limpar a origem da interrupção. Embora o driver de miniporta seja livre para usar outros métodos para determinar quando chamar esse método, o tempo preciso é importante e deve ser mantido.
Quando um driver de adaptador instala um ISR, ele envia um parâmetro ServiceContext junto com o ponto de entrada do ISR (para obter detalhes, consulte Fornecendo informações de contexto do ISR). Quando a interrupção ocorre, o sistema operacional chama o ISR e passa ServiceContext como um parâmetro de chamada para o ISR. Embora o significado do parâmetro ServiceContext seja conhecido apenas pelo desenvolvedor do driver, ele normalmente é um ponteiro para o objeto miniport. O ISR usa esse ponteiro para acessar informações sobre o objeto miniport.
O driver de porta chama o método IMiniportWaveCyclicStream::SetNotificationFreq para especificar a frequência com que o ISR deve chamar o Notify
método. Em todas as versões atuais do Windows, o driver de porta especifica um intervalo regular de 10 milissegundos entre notificações sucessivas. Esse valor pode ser alterado em uma versão futura.
O parâmetro ServiceGroup segue as convenções de contagem de referência para objetos COM.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Cabeçalho | portcls.h (inclua Portcls.h) |
IRQL | Qualquer nível |