Compartilhar via


WUDF_INTERRUPT_WORKITEM função de retorno de chamada (wudfinterrupt.h)

[Aviso: UMDF 2 é a versão mais recente do UMDF e substitui UMDF 1. Todos os novos drivers UMDF devem ser gravados usando UMDF 2. Nenhum novo recurso está sendo adicionado ao UMDF 1 e há suporte limitado para UMDF 1 em versões mais recentes do Windows 10. Drivers universais do Windows devem usar UMDF 2. Para obter mais informações, consulte Introdução com UMDF.]

A função de retorno de chamada de evento OnInterruptWorkItem de um 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 do objeto de interrupção associada ao item de trabalho.

[in] AssociatedObject

Um ponteiro para o objeto associado.

Retornar valor

Nenhum

Comentários

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 WUDF_INTERRUPT_CONFIG antes de chamar IWDFDevice3::CreateInterrupt.

Depois de parar e reconhecer a interrupção, o driver deve retornar rapidamente de seu retorno de chamada OnInterruptIsr , adiando qualquer processamento adicional para um retorno de chamada OnInterruptWorkItem .

Para obter mais informações sobre como lidar com interrupções em drivers UMDF, consulte Acessando interrupções de hardware e manipulação.

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 chamada 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 a 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.
Plataforma de Destino Área de Trabalho
Versão mínima do UMDF 1.11
Cabeçalho wudfinterrupt.h

Confira também

IWDFDevice3::CreateInterrupt

WUDF_INTERRUPT_CONFIG