WUDF_INTERRUPT_WORKITEM función de devolución de llamada (wudfinterrupt.h)
[Advertencia: UMDF 2 es la versión más reciente de UMDF y sustituye a UMDF 1. Todos los nuevos controladores UMDF deben escribirse mediante UMDF 2. No se agregan nuevas características a UMDF 1 y hay compatibilidad limitada con UMDF 1 en versiones más recientes de Windows 10. Los controladores universales de Windows deben usar UMDF 2. Para obtener más información, consulta Introducción a UMDF.]
El onInterruptWorkItem de un controlador función de devolución de llamada de eventos procesa información de interrupción que la función de devolución de llamada onInterruptIsr del controlador ha almacenado.
Sintaxis
WUDF_INTERRUPT_WORKITEM WudfInterruptWorkitem;
void WudfInterruptWorkitem(
[in] IWDFInterrupt *Interrupt,
[in] IWDFObject *AssociatedObject
)
{...}
Parámetros
[in] Interrupt
Puntero a la interfaz de objeto de interrupción asociada al elemento de trabajo.
[in] AssociatedObject
Puntero al objeto asociado.
Valor devuelto
Ninguno
Observaciones
Para registrar un OnInterruptWorkItem función de devolución de llamada, el controlador debe colocar la dirección de la función de devolución de llamada en una estructura de WUDF_INTERRUPT_CONFIG antes de llamar a IWDFDevice3::CreateInterrupt.
Después de detener y reconocer la interrupción, el controlador debe volver rápidamente de su OnInterruptIsr devolución de llamada, posponendo cualquier procesamiento adicional a un OnInterruptWorkItem devolución de llamada.
Para obtener más información sobre cómo controlar las interrupciones en los controladores UMDF, consulte acceso a hardware y control de interrupciones.
Ejemplos
El tipo de función se declara en wudfworkitem.h, como se indica a continuación.
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 un OnInterruptWorkItem función de devolución de llamada denominada MyInterruptWorkItem, primero debe proporcionar una declaración de función que requieren SDV y otras herramientas de comprobación, como se indica a continuación:
WUDF_INTERRUPT_WORKITEM MyInterruptWorkItem;
A continuación, implemente la función de devolución de llamada de la siguiente manera:
VOID
MyInterruptWorkItem (
_In_
IWDFInterrupt* Interrupt,
_In_
IWDFObject* AssociatedObject
)
{…}
Requisitos
Requisito | Valor |
---|---|
fin del soporte técnico | No disponible en UMDF 2.0 y versiones posteriores. |
de la plataforma de destino de | Escritorio |
versión mínima de UMDF | 1.11 |
encabezado de | wudfinterrupt.h |