WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY 结构 (wdfio.h)

[仅适用于 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 成员指定的策略的其他值。 除非驱动程序提供 EvtIoWdmIrpForwardProgress 回调函数,否则此成员应为 NULL

EvtIoAllocateResourcesForReservedRequest

指向驱动程序队列特定的 EvtIoAllocateResourcesForReservedRequest 回调函数或 NULL 的指针。

EvtIoAllocateRequestResources

指向驱动程序队列特定的 EvtIoAllocateRequestResources 回调函数的指针,或 NULL

注解

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY 结构用作 WdfIoQueueAssignForwardProgressPolicy 方法的输入。

在调用 WdfIoQueueAssignForwardProgressPolicy 之前,驱动程序必须通过调用 WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INITWDF_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)