Condividi tramite


WUDF_INTERRUPT_WORKITEM funzione di callback (wudfinterrupt.h)

[Avviso: UMDF 2 è la versione più recente di UMDF e sostituisce UMDF 1. Tutti i nuovi driver UMDF devono essere scritti usando UMDF 2. Non vengono aggiunte nuove funzionalità a UMDF 1 ed è disponibile un supporto limitato per UMDF 1 nelle versioni più recenti di Windows 10. I driver di Windows universali devono usare UMDF 2. Per altre informazioni, vedi Introduzione a UMDF.]

La funzione di callback di un driver OnInterruptWorkItem elabora informazioni di interruzione archiviate dal driver OnInterruptIsr funzione di callback.

Sintassi

WUDF_INTERRUPT_WORKITEM WudfInterruptWorkitem;

VOID WudfInterruptWorkitem(
  [in] IWDFInterrupt *Interrupt,
  [in] IWDFObject *AssociatedObject
)
{...}

Parametri

[in] Interrupt

Puntatore all'interfaccia dell'oggetto interrupt associata all'elemento di lavoro.

[in] AssociatedObject

Puntatore all'oggetto associato.

Valore restituito

Nessuno

Osservazioni

Per registrare un OnInterruptWorkItem funzione di callback, il driver deve inserire l'indirizzo della funzione di callback in una struttura di WUDF_INTERRUPT_CONFIG prima di chiamare IWDFDevice3::CreateInterrupt.

Dopo l'arresto e il riconoscimento dell'interrupt, il driver deve tornare rapidamente dalla OnInterruptIsr callback, rimandando qualsiasi elaborazione aggiuntiva a un OnInterruptWorkItem callback.

Per altre informazioni sulla gestione degli interrupt nei driver UMDF, vedere Accesso all'hardware e alla gestione degli interrupt.

Esempi

Il tipo di funzione viene dichiarato in Wudfworkitem.h, come indicato di seguito.

typedef
_Function_class_(WUDF_INTERRUPT_WORKITEM)
VOID
WUDF_INTERRUPT_WORKITEM(
    _In_
    IWDFInterrupt* Interrupt,
    _In_
    IWDFObject* AssociatedObject
    );

typedef WUDF_INTERRUPT_WORKITEM *PFN_WUDF_INTERRUPT_WORKITEM;

Per definire un OnInterruptWorkItem funzione di callback denominata MyInterruptWorkItem, è prima necessario fornire una dichiarazione di funzione richiesta da SDV e altri strumenti di verifica, come indicato di seguito:

WUDF_INTERRUPT_WORKITEM  MyInterruptWorkItem;

Implementare quindi la funzione di callback come segue:

VOID
  MyInterruptWorkItem (
    _In_
    IWDFInterrupt* Interrupt,
    _In_
    IWDFObject* AssociatedObject
    )
  {…}

Fabbisogno

Requisito Valore
Fine del supporto Non disponibile in UMDF 2.0 e versioni successive.
piattaforma di destinazione Desktop
versione minima di UMDF 1.11
intestazione wudfinterrupt.h

Vedere anche

IWDFDevice3::CreateInterrupt

WUDF_INTERRUPT_CONFIG