Freigeben über


WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT-Funktion (wdfio.h)

[Gilt nur für KMDF]

Die WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT-Funktion initialisiert die WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY Struktur eines Treibers.

Syntax

VOID WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT(
  [out] PWDF_IO_QUEUE_FORWARD_PROGRESS_POLICY   Policy,
  [in]  ULONG                                   TotalForwardProgressRequests,
  [in]  PFN_WDF_IO_WDM_IRP_FOR_FORWARD_PROGRESS EvtIoWdmIrpForForwardProgress
);

Die Parameter

[out] Policy

Ein Zeiger auf die WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY Struktur des Treibers.

[in] TotalForwardProgressRequests

Die Anzahl der Anforderungsobjekte, die das Framework für die Verwendung in Situationen mit geringem Arbeitsspeicher reserviert. Diese Zahl muss größer als Null sein.

[in] EvtIoWdmIrpForForwardProgress

Ein Zeiger auf die EvtIoWdmIrpForwardProgress Rückruffunktion des Treibers.

Rückgabewert

Nichts

Bemerkungen

Die WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT-Funktion stellt die angegebene WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY Struktur null und legt dessen Size-Element fest. Außerdem werden die TotalForwardProgressRequests undForwardProgressReservePolicySettings.Policy.ExaminePolicy.EvtIoWdmIrpForwardProgress Member der Struktur auf die angegebenen Werte festgelegt, und die ForwardProgressReservedPolicy Member wird auf WdfIoForwardProgressReservedPolicyUseExaminefestgelegt.

Beispiele

Im folgenden Codebeispiel wird eine WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY Struktur initialisiert und anschließend WdfIoQueueAssignForwardProgressPolicyaufgerufen. Im Beispiel gibt der Treiber an, dass das Framework 10 Anforderungsobjekte für Situationen mit geringem Arbeitsspeicher zuordnen und reservieren soll und dass das Framework die MyIoForwardExamineIrpForForwardProgress Rückruffunktion aufrufen soll, bevor eines der reservierten Anforderungsobjekte verwendet wird.

#define MAX_RESERVED_REQUESTS 10

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY queueForwardProgressPolicy;
WDFQUEUE readQueue;
NTSTATUS status = STATUS_SUCCESS;

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT(
    &queueForwardProgressPolicy,
    MAX_RESERVED_REQUESTS,
    MyIoForwardExamineIrpForForwardProgress
    );
status = WdfIoQueueAssignForwardProgressPolicy(
    readQueue,
    &queueForwardProgressPolicy
    );

Anforderungen

Anforderung Wert
Zielplattform universell
Minimale KMDF-Version 1.9
Kopfzeile wdfio.h (einschließen Wdf.h)

Siehe auch

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INIT

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_PAGINGIO_INIT

WdfIoQueueAssignForwardProgressPolicy