WdfInterruptReleaseLock, fonction (wdfinterrupt.h)
[S’applique à KMDF et UMDF]
La méthode WdfInterruptReleaseLock met fin à une séquence de code qui s’exécute au niveau du DIRQL de l’appareil tout en tenant le verrou de rotation d’un objet d’interruption.
Pour les objets d’interruption de niveau passif, la méthode met fin à une séquence de code qui s’exécute au niveau passif tout en conservant le verrou passif d’un objet d’interruption.
Syntaxe
void WdfInterruptReleaseLock(
[in] WDFINTERRUPT Interrupt
);
Paramètres
[in] Interrupt
Handle pour un objet d’interruption de framework.
Remarques
Un bogue case activée se produit si le pilote fournit un handle d’objet non valide.
La méthode WdfInterruptReleaseLock libère le verrou de rotation ou le verrou d’attente de l’objet d’interruption spécifié et retourne l’IRQL du processeur au niveau défini sur avant que le pilote ait appelé WdfInterruptAcquireLock.
Votre pilote ne peut pas appeler WdfInterruptReleaseLock avant que le framework ait appelé la fonction de rappel EvtInterruptEnable du pilote ou une fois que l’infrastructure a appelé la fonction de rappel EvtInterruptDisable du pilote.
Pour plus d’informations sur la méthode WdfInterruptReleaseLock , consultez Synchronisation du code d’interruption.
Pour plus d’informations sur la gestion des interruptions dans les pilotes basés sur l’infrastructure, consultez Gestion des interruptions matérielles.
Cette méthode doit être appelée au niveau du DIRQL défini par WdfInterruptAcquireLock.
Pour les interruptions de niveau passif, le pilote doit appeler WdfInterruptReleaseLock à IRQL = PASSIVE_LEVEL.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.0 |
Version UMDF minimale | 2.0 |
En-tête | wdfinterrupt.h (inclure Wdf.h) |
IRQL | Consultez la section Notes. |
Règles de conformité DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), WdfInterruptLock(kmdf), WdfInterruptLockRelease(kmdf) |