Skip to content

Latest commit

 

History

History
107 lines (77 loc) · 3.17 KB

nf-wdfio-wdf_io_queue_drained.md

File metadata and controls

107 lines (77 loc) · 3.17 KB
UID title description old-location tech.root ms.date keywords ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames f1_keywords topic_type api_type api_location api_name
NF:wdfio.WDF_IO_QUEUE_DRAINED
WDF_IO_QUEUE_DRAINED function (wdfio.h)
The WDF_IO_QUEUE_DRAINED function returns TRUE if the I/O queue's state indicates that the queue is drained.
wdf\wdf_io_queue_drained.htm
wdf
02/26/2018
WDF_IO_QUEUE_DRAINED function
DFQueueObjectRef_ddc761b3-266a-4942-94ed-8ecca07575d1.xml, WDF_IO_QUEUE_DRAINED, WDF_IO_QUEUE_DRAINED function, kmdf.wdf_io_queue_drained, wdf.wdf_io_queue_drained, wdfio/WDF_IO_QUEUE_DRAINED
wdfio.h
Wdf.h
Universal
1.0
None
Any IRQL.
Windows
WDF_IO_QUEUE_DRAINED
wdfio/WDF_IO_QUEUE_DRAINED
APIRef
kbSyntax
LibDef
None
None.dll
WDF_IO_QUEUE_DRAINED

WDF_IO_QUEUE_DRAINED function

-description

[Applies to KMDF and UMDF]

The WDF_IO_QUEUE_DRAINED function returns TRUE if the I/O queue's state indicates that the queue is drained.

-parameters

-param State [in]

A WDF_IO_QUEUE_STATE-typed value that WdfIoQueueGetState returns.

-returns

WDF_IO_QUEUE_DRAINED returns TRUE if the specified queue state indicates that the queue is drained. Otherwise, the function returns FALSE.

-remarks

An I/O queue is drained if it is not accepting new I/O requests, and if all requests that were in the queue have been delivered to the driver.

Your driver can call WDF_IO_QUEUE_DRAINED after it has called WdfIoQueueGetState.

For more information about I/O queue states, see WDF_IO_QUEUE_STATE.

Examples

The following code example is a routine that returns TRUE if a specified I/O queue is drained.

BOOLEAN
IsQueueDrained(
    IN WDFQUEUE Queue
    )
{
    WDF_IO_QUEUE_STATE queueStatus;
    queueStatus = WdfIoQueueGetState(
                                     Queue,
                                     NULL,
                                     NULL
                                     );
    return (WDF_IO_QUEUE_DRAINED(queueStatus)) ? TRUE : FALSE;
}

-see-also

WDF_IO_QUEUE_IDLE

WDF_IO_QUEUE_PURGED

WDF_IO_QUEUE_READY

WDF_IO_QUEUE_STOPPED