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 info, vedi Introduzione con UMDF.]

La funzione di callback dell'evento OnInterruptWorkItem di un driver elabora le informazioni di interruzione archiviate dalla funzione di callback OnInterruptIsr del driver.

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 una funzione di callback OnInterruptWorkItem , il driver deve inserire l'indirizzo della funzione di callback in una struttura di WUDF_INTERRUPT_CONFIG prima di chiamare IWDFDevice3::CreateInterrupt.

Dopo aver arrestato e riconosciuto l'interrupt, il driver dovrebbe tornare rapidamente dal callback OnInterruptIsr , rinviando qualsiasi elaborazione aggiuntiva a un callback OnInterruptWorkItem .

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

Esempio

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 una funzione di callback OnInterruptWorkItem denominata MyInterruptWorkItem, è innanzitutto 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 indicato di seguito:

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

Requisiti

Requisito Valore
Fine del supporto Non disponibile in UMDF 2.0 e versioni successive.
Piattaforma di destinazione Desktop
Versione UMDF minima 1.11
Intestazione wudfinterrupt.h

Vedi anche

IWDFDevice3::CreateInterrupt

WUDF_INTERRUPT_CONFIG