Funzione WdfIoQueueGetState (wdfio.h)
[Si applica a KMDF e UMDF]
Il metodo WdfIoQueueGetState restituisce lo stato di una coda di I/O specificata.
Sintassi
WDF_IO_QUEUE_STATE WdfIoQueueGetState(
[in] WDFQUEUE Queue,
[out, optional] PULONG QueueRequests,
[out, optional] PULONG DriverRequests
);
Parametri
[in] Queue
Handle per un oggetto coda del framework.
[out, optional] QueueRequests
Puntatore a una posizione che riceve il numero di richieste di I/O attualmente presenti nella coda di I/O e che non sono state recapitate al driver. Questo puntatore è facoltativo e può essere NULL.
[out, optional] DriverRequests
Puntatore a una posizione che riceve il numero di richieste di I/O recapitate al driver, ma che il driver non è stato completato o annullato. Questo puntatore è facoltativo e può essere NULL.
Valore restituito
WdfIoQueueGetState restituisce un valore tipizzato WDF_IO_QUEUE_STATE, che può contenere l'OR bit per bit di diversi enumeratori WDF_IO_QUEUE_STATE .
Se il driver fornisce un handle di oggetto non valido, si verifica un controllo di bug.
Commenti
Dopo aver chiamato WdfIoQueueGetState, il driver può passare il valore dello stato ricevuto alle funzioni seguenti, definite in Wdfio.h:
-
WDF_IO_QUEUE_DRAINED, che restituisce TRUE se la coda viene svuotata.
-
WDF_IO_QUEUE_IDLE, che restituisce TRUE se la coda è inattiva.
-
WDF_IO_QUEUE_PURGED, che restituisce TRUE se la coda viene rimossa.
-
WDF_IO_QUEUE_READY, che restituisce TRUE se la coda è pronta.
-
WDF_IO_QUEUE_STOPPED, che restituisce TRUE se la coda viene arrestata.
Per altre informazioni sul metodo WdfIoQueueGetState , vedere Recupero delle proprietà della coda di I/O.
Esempio
L'esempio di codice seguente è una routine che restituisce TRUE se una coda di I/O specificata è inattiva.
BOOLEAN
IsQueueIdle(
IN WDFQUEUE Queue
)
{
WDF_IO_QUEUE_STATE queueStatus;
queueStatus = WdfIoQueueGetState(
Queue,
NULL,
NULL
);
return (WDF_IO_QUEUE_IDLE(queueStatus)) ? TRUE : FALSE;
}
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Versione KMDF minima | 1.0 |
Versione UMDF minima | 2,0 |
Intestazione | wdfio.h (include Wdf.h) |
Libreria | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <= DISPATCH_LEVEL |
Regole di conformità DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |