EVT_WDF_IO_QUEUE_IO_READ función de devolución de llamada (wdfio.h)
[Se aplica a KMDF y UMDF]
La función de devolución de llamada de eventos EvtIoRead de un controlador procesa una solicitud de lectura especificada.
Sintaxis
EVT_WDF_IO_QUEUE_IO_READ EvtWdfIoQueueIoRead;
void EvtWdfIoQueueIoRead(
[in] WDFQUEUE Queue,
[in] WDFREQUEST Request,
[in] size_t Length
)
{...}
Parámetros
[in] Queue
Identificador del objeto de cola de marco asociado a la solicitud de E/S.
[in] Request
Identificador de un objeto de solicitud de marco.
[in] Length
Número de bytes que se van a leer.
Valor devuelto
Ninguno
Observaciones
Un controlador registra una función de devolución de llamada EvtIoRead cuando llama a WdfIoQueueCreate. Para obtener más información sobre cómo llamar a WdfIoQueueCreate, vea Creación de colas de E/S.
Si un controlador ha registrado un EvtIoRead función de devolución de llamada para la cola de E/S de un dispositivo, la función de devolución de llamada recibe todas las solicitudes de lectura de la cola. Para obtener más información, consulte controladores de solicitudes.
La función de devolución de llamada EvtIoRead debe procesar cada solicitud de E/S recibida de alguna manera. Para obtener más información, consulte procesar solicitudes de E/S.
Las solicitudes de lectura requieren un búfer de salida, que recibe los datos que proporciona el controlador. Para obtener información sobre cómo el controlador puede acceder al búfer de una solicitud de lectura, consulte Acceso a búferes de datos en controladores de Framework-Based.
Esta función de devolución de llamada se puede llamar en IRQL <= DISPATCH_LEVEL, a menos que el ExecutionLevel miembro de la estructura de WDF_OBJECT_ATTRIBUTES del dispositivo o del controlador esté establecido en WdfExecutionLevelPassive.
Si irQL es PASSIVE_LEVEL, el marco llama a la función de devolución de llamada dentro de una región crítica .
Para obtener más información sobre los niveles IRQL para los controladores de solicitudes, consulte Using Automatic Synchronization.
La función de devolución de llamada EvtIo Read de un controlador no debe llamar a los siguientes métodos de objeto de cola:
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Universal |
versión mínima de KMDF | 1.0 |
versión mínima de UMDF | 2.0 |
encabezado | wdfio.h (incluya Wdf.h) |
irQL | <= DISPATCH_LEVEL (consulte la sección Comentarios) |