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

[Advertencia: UMDF 2 es la versión más reciente de UMDF y sustituye a UMDF 1. Todos los controladores UMDF nuevos deben escribirse con UMDF 2. No se agregan nuevas características a UMDF 1 y hay compatibilidad limitada con UMDF 1 en versiones más recientes de Windows 10. Los controladores universales de Windows deben usar UMDF 2. Para obtener más información, consulta Introducción con UMDF.

El método Purge dirige el marco para rechazar nuevas solicitudes de E/S entrantes y cancelar todas las solicitudes pendientes.

Sintaxis

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

Parámetros

[in, optional] pPurgeComplete

Puntero a la interfaz IQueueCallbackStateChange cuyo método llama al marco para entregar el estado de la cola al controlador. El marco llama al método una vez canceladas todas las solicitudes. Este parámetro es opcional y puede ser NULL.

Valor devuelto

None

Observaciones

El marco cancela las solicitudes no procesadas en la cola. Para las solicitudes que se entregan al controlador y se marcan como cancelables, el marco llama a IRequestCallbackCancel::OnCancel.

El controlador debe asegurarse de que solo uno de los métodos siguientes está en curso en un momento dado:

Por ejemplo, si el controlador llamó anteriormente Purge, debe esperar la notificación del método de la interfaz a la que apunta el parámetro pPurgeComplete antes de llamar a Stop o Drain. Infringir esta regla da como resultado la finalización del proceso de host.

Ejemplos

En el ejemplo de código siguiente se muestra cómo detener las solicitudes en una cola.

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 Value
Finalización del soporte técnico No disponible en UMDF 2.0 y versiones posteriores.
Plataforma de destino Escritorio
Versión mínima de UMDF 1.5
Encabezado wudfddi.h (incluya Wudfddi.h)
Archivo DLL WUDFx.dll

Consulte también

IQueueCallbackStateChange

IRequestCallbackCancel::OnCancel

IWDFIoQueue

IWDFIoQueue::D rain

IWDFIoQueue::Stop