Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
[Se aplica a KMDF y UMDF]
El método WdfIoQueueGetState devuelve el estado de una cola de E/S especificada.
Sintaxis
WDF_IO_QUEUE_STATE WdfIoQueueGetState(
[in] WDFQUEUE Queue,
[out, optional] PULONG QueueRequests,
[out, optional] PULONG DriverRequests
);
Parámetros
[in] Queue
Identificador de un objeto de cola de marco.
[out, optional] QueueRequests
Puntero a una ubicación que recibe el número de solicitudes de E/S que se encuentran actualmente en la cola de E/S y que no se han entregado al controlador. Este puntero es opcional y se puede NULL.
[out, optional] DriverRequests
Puntero a una ubicación que recibe el número de solicitudes de E/S que se han entregado al controlador, pero que el controlador no se ha completado o cancelado. Este puntero es opcional y se puede NULL.
Valor devuelto
WdfIoQueueGetState devuelve un valor de tipo WDF_IO_QUEUE_STATE, que puede contener el OR bit a bit de varios enumeradores de WDF_IO_QUEUE_STATE.
Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.
Observaciones
Después de llamar a WdfIoQueueGetState, el controlador puede pasar el valor de estado recibido a las siguientes funciones, que se definen en Wdfio.h:
-
WDF_IO_QUEUE_DRAINED, que devuelve TRUE si se purga la cola.
-
WDF_IO_QUEUE_IDLE, que devuelve TRUE si la cola está inactiva.
-
WDF_IO_QUEUE_PURGED, que devuelve TRUE si se purga la cola.
-
WDF_IO_QUEUE_READY, que devuelve TRUE si la cola está lista.
-
WDF_IO_QUEUE_STOPPED, que devuelve TRUE si se detiene la cola.
Para obtener más información sobre el método WdfIoQueueGetState, vea Obtener propiedades de cola de E/S.
Ejemplos
El ejemplo de código siguiente es una rutina que devuelve TRUE si una cola de E/S especificada está inactiva.
BOOLEAN
IsQueueIdle(
IN WDFQUEUE Queue
)
{
WDF_IO_QUEUE_STATE queueStatus;
queueStatus = WdfIoQueueGetState(
Queue,
NULL,
NULL
);
return (WDF_IO_QUEUE_IDLE(queueStatus)) ? TRUE : FALSE;
}
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) |
Biblioteca | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
irQL | <= DISPATCH_LEVEL |
reglas de cumplimiento de DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |