WUDF_INTERRUPT_WORKITEM função de retorno de chamada (wudfinterrupt.h)
[Aviso: UMDF 2 é a versão mais recente do UMDF e substitui o UMDF 1. Todos os novos drivers UMDF devem ser gravados usando UMDF 2. Nenhum recurso novo está sendo adicionado ao UMDF 1 e há suporte limitado para UMDF 1 em versões mais recentes do Windows 10. Os drivers universais do Windows devem usar o UMDF 2. Para obter mais informações, consulte Introdução aoda UMDF .]
A função de retorno de chamada de evento OnInterruptWorkItem do driver processa informações de interrupção que a função de retorno de chamada OnInterruptIsr do driver armazenou.
Sintaxe
WUDF_INTERRUPT_WORKITEM WudfInterruptWorkitem;
void WudfInterruptWorkitem(
[in] IWDFInterrupt *Interrupt,
[in] IWDFObject *AssociatedObject
)
{...}
Parâmetros
[in] Interrupt
Um ponteiro para a interface de objeto de interrupção associada ao item de trabalho.
[in] AssociatedObject
Um ponteiro para o objeto associado.
Valor de retorno
Nenhum
Observações
Para registrar uma função de retorno de chamada OnInterruptWorkItem, o driver deve colocar o endereço da função de retorno de chamada em uma estrutura de WUDF_INTERRUPT_CONFIG antes de chamar IWDFDevice3::CreateInterrupt.
Depois de parar e reconhecer a interrupção, o driver deve retornar rapidamente de seu OnInterruptIsr retorno de chamada, adiando qualquer processamento adicional para um OnInterruptWorkItem retorno de chamada.
Para obter mais informações sobre como lidar com interrupções em drivers UMDF, consulte Acessando o hardware e tratando interrupções.
Exemplos
O tipo de função é declarado em Wudfworkitem.h, da seguinte maneira.
typedef
_Function_class_(WUDF_INTERRUPT_WORKITEM)
VOID
WUDF_INTERRUPT_WORKITEM(
_In_
IWDFInterrupt* Interrupt,
_In_
IWDFObject* AssociatedObject
);
typedef WUDF_INTERRUPT_WORKITEM *PFN_WUDF_INTERRUPT_WORKITEM;
Para definir uma função de retorno de chamada OnInterruptWorkItem denominada MyInterruptWorkItem, primeiro você deve fornecer uma declaração de função que o SDV e outras ferramentas de verificação exigem, da seguinte maneira:
WUDF_INTERRUPT_WORKITEM MyInterruptWorkItem;
Em seguida, implemente sua função de retorno de chamada da seguinte maneira:
VOID
MyInterruptWorkItem (
_In_
IWDFInterrupt* Interrupt,
_In_
IWDFObject* AssociatedObject
)
{…}
Requisitos
Requisito | Valor |
---|---|
fim do suporte | Indisponível no UMDF 2.0 e posterior. |
da Plataforma de Destino | Desktop |
versão mínima do UMDF | 1.11 |
cabeçalho | wudfinterrupt.h |