Partager via


WdfDmaTransactionSetImmediateExecution, fonction (wdfdmatransaction.h)

[S’applique uniquement à KMDF]

La méthode WdfDmaTransactionSetImmediateExecution marque la transaction DMA spécifiée afin que les appels à WdfDmaTransactionExecute et WdfDmaTransactionAllocateResources lancent la transaction immédiatement ou échouent.

Syntaxe

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

Paramètres

[in] DmaTransaction

Handle d’un objet de transaction DMA à marquer pour une exécution immédiate.

[in] UseImmediateExecution

Valeur booléenne qui, si true, indique que la transaction doit s’exécuter immédiatement (ou échouer si les ressources ne sont pas disponibles) et, si la valeur FALSE, indique que la transaction doit être mise en file d’attente pour l’exécution une fois que les ressources DMA sont disponibles.

Valeur de retour

None

Remarques

Avant d’appeler WdfDmaTransactionSetImmediateExecution, le pilote doit initialiser la transaction.

Si le pilote appelle WdfDmaTransactionExecute ou WdfDmaTransactionAllocateResources après avoir appelé WdfDmaTransactionSetImmediateExecution avec UseImmediateExecution défini sur TRUE, et que les ressources nécessaires à la demande ne sont pas disponibles, cette méthode retourne STATUS_INSUFFICIENT_RESOURCES. Si les ressources requises sont disponibles, l’infrastructure les revendique et lance l’appel de manière synchrone.

Une fois que le pilote a marqué une transaction pour une exécution immédiate, la transaction reste marquée comme telle jusqu’à ce que le pilote appelle WdfDmaTransactionRelease ou efface l’indicateur en appelant WdfDmaTransactionSetImmediateExecution avec UseImmediateExecution défini sur FALSE.

WdfDmaTransactionSetImmediateExecution nécessite DMA version 3. Pour sélectionner DMA version 3, définissez le membre WdmDmaVersionOverride de WDF_DMA_ENABLER_CONFIG sur 3.

Si votre pilote appelle cette méthode sur un système d’exploitation antérieur à Windows 8, le vérificateur de l’infrastructure signale une erreur.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8
Plateforme cible Universal
Version KMDF minimale 1.11
En-tête wdfdmatransaction.h (inclure Wdf.h)
Bibliothèque Wdf01000.sys (consultez Gestion de version de la bibliothèque d’infrastructure.)
IRQL <=DISPATCH_LEVEL
Règles de conformité DDI DriverCreate(kmdf)

Voir aussi

WdfDmaTransactionAllocateResources

WdfDmaTransactionExecute

WdfDmaTransactionRelease