Compartir a través de


Función WdfDmaTransactionSetImmediateExecution (wdfdmatransaction.h)

[Solo se aplica a KMDF]

El método WdfDmaTransactionSetImmediateExecution marca la transacción DMA especificada para que las llamadas a WdfDmaTransactionExecute y WdfDmaTransactionAllocateResources inicien la transacción inmediatamente o produzcan un error.

Sintaxis

void WdfDmaTransactionSetImmediateExecution(
  [in] WDFDMATRANSACTION DmaTransaction,
  [in] BOOLEAN           UseImmediateExecution
);

Parámetros

[in] DmaTransaction

Identificador de un objeto de transacción DMA que se va a marcar para su ejecución inmediata.

[in] UseImmediateExecution

Un valor booleano que, si es TRUE, indica que la transacción debe ejecutarse inmediatamente (o producir un error si los recursos no están disponibles) y, si es FALSE, indica que la transacción se debe poner en cola para su ejecución una vez que los recursos DMA estén disponibles.

Valor devuelto

None

Observaciones

Antes de llamar a WdfDmaTransactionSetImmediateExecution, el controlador debe inicializar la transacción.

Si el controlador llama a WdfDmaTransactionExecute o WdfDmaTransactionAllocateResources después de llamar a WdfDmaTransactionSetImmediateExecution con UseImmediateExecution establecido en TRUE y los recursos necesarios para la solicitud no están disponibles, ese método devuelve STATUS_INSUFFICIENT_RESOURCES. Si los recursos necesarios están disponibles, el marco los reclama e inicia la llamada de forma sincrónica.

Una vez que el controlador marca una transacción para su ejecución inmediata, la transacción permanece marcada como tal hasta que el controlador llama a WdfDmaTransactionRelease o borra la marca llamando a WdfDmaTransactionSetImmediateExecution con UseImmediateExecution establecido en FALSE.

WdfDmaTransactionSetImmediateExecution requiere la versión 3 de DMA. Para seleccionar DMA versión 3, establezca el miembro WdmDmaVersionOverride de WDF_DMA_ENABLER_CONFIG en 3.

Si el controlador llama a este método en un sistema operativo anterior a Windows 8, el comprobador del marco notifica un error.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 8
Plataforma de destino Universal
Versión mínima de KMDF 1.11
Encabezado wdfdmatransaction.h (incluya Wdf.h)
Library Wdf01000.sys (consulte Control de versiones de la biblioteca de marcos).
IRQL <=DISPATCH_LEVEL
Reglas de cumplimiento de DDI DriverCreate(kmdf)

Consulte también

WdfDmaTransactionAllocateResources

WdfDmaTransactionExecute

WdfDmaTransactionRelease