Partilhar via


Método IWDFIoQueue::P urge (wudfddi.h)

[Aviso: UMDF 2 é a versão mais recente do UMDF e substitui o UMDF 1. Todos os novos drivers UMDF devem ser gravados usando UMDF 2. Nenhum recurso novo está sendo adicionado ao UMDF 1 e há suporte limitado para UMDF 1 em versões mais recentes do Windows 10. Os drivers universais do Windows devem usar o UMDF 2. Para obter mais informações, consulte Introdução aoda UMDF .]

O método Purge direciona a estrutura para rejeitar novas solicitações de E/S de entrada e cancelar todas as solicitações pendentes.

Sintaxe

void Purge(
  [in, optional] IQueueCallbackStateChange *pPurgeComplete
);

Parâmetros

[in, optional] pPurgeComplete

Um ponteiro para a interface IQueueCallbackStateChange cujo método a estrutura chama para entregar o estado da fila ao driver. A estrutura chama o método depois que todas as solicitações são canceladas. Esse parâmetro é opcional e pode ser NULL.

Valor de retorno

Nenhum

Observações

A estrutura cancela solicitações não processadas na fila. Para solicitações entregues ao driver e marcadas como canceláveis, a estrutura chama IRequestCallbackCancel::OnCancel.

O driver deve garantir que apenas um dos seguintes métodos esteja em andamento a qualquer momento:

Por exemplo, se o driver anteriormente chamado Limpar, ele deverá aguardar a notificação do método da interface para o qual o parâmetro pPurgeComplete aponta antes de chamar Parar ou Drenar. Violar essa regra resulta no encerramento do processo de host.

Exemplos

O exemplo de código a seguir mostra como interromper solicitações para uma fila.

VOID
CUmdfHidFile::OnCleanupFile(
    __in IWDFFile* /* WdfFile */
    )
/*++
    This method handles the cleanup operation for the file object.  
    Because the file is disabled, no new reports should be added to the ring buffer.
--*/
{
    this->Disable();

    //
    // Stop all current requests to read reports.
    //

    m_GetReportQueue->Purge(NULL);
}

Requisitos

Requisito Valor
fim do suporte Indisponível no UMDF 2.0 e posterior.
da Plataforma de Destino Área de trabalho
versão mínima do UMDF 1.5
cabeçalho wudfddi.h (inclua Wudfddi.h)
de DLL WUDFx.dll

Consulte também

IQueueCallbackStateChange

IRequestCallbackCancel::OnCancel

IWDFIoQueue

IWDFIoQueue::D rain

IWDFIoQueue::Stop