[仅适用于 KMDF]
WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY 结构包含框架用来为 I/O 队列启用 保证向前进度 的驱动程序提供的信息。
语法
typedef struct _WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY {
  ULONG                                              Size;
  ULONG                                              TotalForwardProgressRequests;
  WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY            ForwardProgressReservedPolicy;
  WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY_SETTINGS   ForwardProgressReservePolicySettings;
  PFN_WDF_IO_ALLOCATE_RESOURCES_FOR_RESERVED_REQUEST EvtIoAllocateResourcesForReservedRequest;
  PFN_WDF_IO_ALLOCATE_REQUEST_RESOURCES              EvtIoAllocateRequestResources;
} WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY, *PWDF_IO_QUEUE_FORWARD_PROGRESS_POLICY;
成员
Size
此结构的长度(以字节为单位)。
TotalForwardProgressRequests
框架将尝试保留的请求对象数,以便在内存不足的情况下使用。 此数字必须大于零。
ForwardProgressReservedPolicy
WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY类型化值,指定框架如何在低内存情况下分配请求对象。
ForwardProgressReservePolicySettings
一个 WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY_SETTINGS 结构,其中包含特定于 ForwardProgressReservedPolicy 成员所指定的策略的其他值。 除非驱动程序提供 EvtIoWdmIrpForforwardProgress 回调函数,否则此成员应 NULL。
EvtIoAllocateResourcesForReservedRequest
指向驱动程序特定于队列的 EvtIoAllocateResourcesForReservedRequest 回调函数的指针,或 NULL。
EvtIoAllocateRequestResources
指向驱动程序特定于队列的 EvtIoAllocateRequestRequestResources 回调函数的指针,或 NULL。
注解
WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY 结构用作 WdfIoQueueAssignForwardProgressPolicy 方法的输入。
驱动程序必须在调用 WdfIoQueueAssignForwardProgressPolicy之前调用 WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INIT、WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT或 WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_PAGINGIO_INIT 来初始化 WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY 结构。
要求
| 要求 | 价值 | 
|---|---|
| 最低 KMDF 版本 | 1.9 | 
| 标头 | wdfio.h (包括 Wdf.h) |