次の方法で共有


WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INIT関数 (wdfio.h)

[KMDF にのみ適用]

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INIT関数は、ドライバーのWDF_IO_QUEUE_FORWARD_PROGRESS_POLICY構造体を初期化します。

構文

void WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INIT(
  [out] PWDF_IO_QUEUE_FORWARD_PROGRESS_POLICY Policy,
  [in]  ULONG                                 TotalForwardProgressRequests
);

パラメーター

[out] Policy

ドライバーの WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY 構造体へのポインター。

[in] TotalForwardProgressRequests

メモリ不足の状況でフレームワークが使用のために予約しようとする要求オブジェクトの数。 この番号は 0 より大きくなければなりません。

戻り値

なし

解説

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INIT関数は、指定したWDF_IO_QUEUE_FORWARD_PROGRESS_POLICY構造体をゼロにし、その Size メンバーを設定します。 また、構造体の TotalForwardProgressRequests メンバーを指定した値に設定し 、ForwardProgressReservedPolicy メンバーを WdfIoForwardProgressReservedPolicyAlwaysUseReservedRequest に設定します。

次のコード例では、 WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY 構造体を初期化し、 WdfIoQueueAssignForwardProgressPolicy を呼び出します。 この例では、ドライバーは、フレームワークがメモリ不足の状況に対して 10 個の要求オブジェクトを割り当てて予約する必要があることを指定しています。

#define MAX_RESERVED_REQUESTS 10

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY queueForwardProgressPolicy;
WDFQUEUE readQueue;
NTSTATUS status = STATUS_SUCCESS;

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INIT(
                                                  &queueForwardProgressPolicy,
                                                  MAX_RESERVED_REQUESTS
                                                  );
status = WdfIoQueueAssignForwardProgressPolicy(
                                               readQueue,
                                               &queueForwardProgressPolicy
                                               );

要件

要件
対象プラットフォーム ユニバーサル
最小 KMDF バージョン 1.9
Header wdfio.h (Wdf.h を含む)

こちらもご覧ください

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_PAGINGIO_INIT

WdfIoQueueAssignForwardProgressPolicy