Partilhar via


função WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT (wdfio.h)

[Aplica-se somente ao KMDF]

A função WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT inicializa a estrutura de WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY de um driver.

Sintaxe

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
);

Parâmetros

[out] Policy

Um ponteiro para a estrutura de WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY do driver.

[in] TotalForwardProgressRequests

O número de objetos de solicitação que a estrutura tentará reservar para uso em situações de memória baixa. Esse número deve ser maior que zero.

[in] EvtIoWdmIrpForForwardProgress

Um ponteiro para o do driver EvtIoWdmIrpForForwardProgress função de retorno de chamada.

Valor de retorno

Nenhum

Observações

A função WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT zera a estrutura de WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY especificada e define seu membro tamanho. Ele também define a estrutura TotalForwardProgressRequests eForwardProgressReservePolicySettings.Policy.ExaminePolicy.EvtIoWdmIrpForForwardProgress membros para os valores especificados, e define o membro ForwardProgressReservedPolicy como WdfIoForwardProgressReservedPolicyUseExamine.

Exemplos

O exemplo de código a seguir inicializa uma estrutura de WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY e chama WdfIoQueueAssignForwardProgressPolicy. No exemplo, o driver está especificando que a estrutura deve alocar e reservar 10 objetos de solicitação para situações de memória baixa e que a estrutura deve chamar o myIoForwardExamineIrpForForwardProgress do driver função de retorno de chamada antes de usar um dos objetos de solicitação reservada.

#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
    );

Requisitos

Requisito Valor
da Plataforma de Destino Universal
versão mínima do KMDF 1.9
cabeçalho wdfio.h (inclua Wdf.h)

Consulte também

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INIT

WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_PAGINGIO_INIT

WdfIoQueueAssignForwardProgressPolicy