Função WdfIoQueuePurgeSynchronously (wdfio.h)
[Aplica-se a KMDF e UMDF]
O método WdfIoQueuePurgeSynchronously faz com que a estrutura pare de enfileirar solicitações de E/S para uma fila de E/S e cancele solicitações não processadas e solicitações canceláveis de propriedade do driver.
Sintaxe
void WdfIoQueuePurgeSynchronously(
[in] WDFQUEUE Queue
);
Parâmetros
[in] Queue
Um identificador para um objeto de fila de estrutura.
Retornar valor
Nenhum
Comentários
Um bug marcar ocorrerá se o driver fornecer um identificador de objeto inválido.
Depois que um driver chama WdfIoQueuePurgeSynchronously, a estrutura para de adicionar solicitações de E/S à fila especificada. A estrutura cancela todas as solicitações que não entregou ao driver. Se a estrutura receber solicitações adicionais para a fila, ela as concluirá com uma conclusão status valor de STATUS_INVALID_DEVICE_STATE.
WdfIoQueuePurgeSynchronously retorna depois que todas as solicitações não processadas e de propriedade do driver são concluídas ou canceladas.
Depois que um driver limpar uma fila de E/S, ele poderá reiniciar a fila chamando WdfIoQueueStart.
Não chame WdfIoQueuePurgeSynchronously das seguintes funções de retorno de chamada de evento de objeto de fila, independentemente da fila com a qual a função de retorno de chamada de evento está associada:
EvtIoDefaultEvtIoDeviceControlEvtIoInternalDeviceControlEvtIoReadEvtIoWrite Para obter mais informações sobre o método WdfIoQueuePurgeSynchronously , consulte Managing I/O Queues.
Exemplos
O exemplo de código a seguir limpa uma fila de E/S especificada.
WdfIoQueuePurgeSynchronously(ReadQueue);
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1.0 |
Versão mínima do UMDF | 2,0 |
Cabeçalho | wdfio.h (inclua Wdf.h) |
Biblioteca | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |
Regras de conformidade da DDI | ChangeQueueState(kmdf), DriverCreate(kmdf), EvtSurpriseRemoveNoSuspendQueue(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), NoCancelFromEvtSurpriseRemove(kmdf), NoIoQueuePurgeSynchronously(kmdf) |