Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Para melhorar o desempenho, os drivers baseados em estrutura que criam e enviam muitas solicitações assíncronas quase idênticas para um destino de E/S podem reutilizar objetos de solicitação em vez de criar um novo objeto de solicitação para cada solicitação. Um driver pode reutilizar um objeto de solicitação após a conclusão da solicitação.
Se um driver tiver criado um objeto de solicitação chamando WdfRequestCreate ou WdfRequestCreateFromIrp, ele poderá reutilizar a solicitação chamando WdfRequestReuse. Um driver também pode reutilizar objetos de solicitação que recebeu da estrutura em suas filas de E/S, mas não pode alterar o IRP que o objeto de solicitação recebida contém.
Se tiver cuidado para evitar situações que causam os valores de retorno malsucedidos descritos em WdfRequestReuse, o seu driver pode chamar WdfRequestReuse a partir de uma função de callback CompletionRoutine. (A função de retorno de chamada CompletionRoutine tem um valor de retorno VOID e, portanto, não pode relatar erros.)
Se o driver fornecer uma função de retorno de chamada CompletionRoutine para um objeto de solicitação que ele reutiliza, o driver deverá chamar WdfRequestSetCompletionRoutine depois de chamar WdfRequestReuse.