次の方法で共有


WDF_IO_QUEUE_CONFIG_INIT関数 (wdfio.h)

[KMDF と UMDF に適用]

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

構文

void WDF_IO_QUEUE_CONFIG_INIT(
  [out] PWDF_IO_QUEUE_CONFIG       Config,
  [in]  WDF_IO_QUEUE_DISPATCH_TYPE DispatchType
);

パラメーター

[out] Config

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

[in] DispatchType

キューのディスパッチ要求の種類を識別する WDF_IO_QUEUE_DISPATCH_TYPE 列挙子。

戻り値

なし

注釈

ドライバーは、デバイスの既定のキューではない電源マネージド I/O キューを作成するときに、WDF_IO_QUEUE_CONFIG_INIT を呼び出す必要があります。 WDF_IO_QUEUE_CONFIG_INIT 関数は、指定した WDF_IO_QUEUE_CONFIG 構造体をゼロにし、その Size メンバーを設定します。 また、PowerManaged メンバーを WdfUseDefault 設定し、指定したディスパッチ型を DispatchType メンバーに格納します。

KMDF バージョン 1.9 以降、DispatchType が WdfIoQueueDispatchParallel に設定されている場合、WDF_IO_QUEUE_CONFIG_INIT 構造体の NumberOfPresentedRequests メンバーが -1 に設定されます。 この値は、フレームワークが無制限の数の I/O 要求をドライバーに配信できることを示します。

例示

次のコード例では、WDF_IO_QUEUE_CONFIG 構造体を初期化し、WdfIoQueueCreateを呼び出します。

WDF_IO_QUEUE_CONFIG  queueConfig;
NTSTATUS  status = STATUS_SUCCESS;
WDFQUEUE  readQueue;

WDF_IO_QUEUE_CONFIG_INIT(
                         &queueConfig,
                         WdfIoQueueDispatchManual
                         );
status = WdfIoQueueCreate(
                          hDevice,
                          &queueConfig,
                          WDF_NO_OBJECT_ATTRIBUTES,
                          &readQueue
                          );

必要条件

要件 価値
ターゲット プラットフォーム 普遍
最小 KMDF バージョン 1.0
UMDF の最小バージョン する 2.0
ヘッダー wdfio.h (Wdf.h を含む)

こちらもご覧ください

WDF_IO_QUEUE_CONFIG

WDF_IO_QUEUE_CONFIG_INIT_DEFAULT_QUEUE

WDF_IO_QUEUE_DISPATCH_TYPE

WdfIoQueueCreate