IoAcquireCancelSpinLock, fonction (wdm.h)
La routine IoAcquireCancelSpinLock synchronise les transitions d’état annulable pour les irPs d’une manière multiprocesseur sécurisée.
Syntaxe
void IoAcquireCancelSpinLock(
PKIRQL Irql
);
Paramètres
Irql
[out] Pointeur vers une variable dans laquelle enregistrer le runtime d’intégration actuel pour un appel ultérieur à IoReleaseCancelSpinLock. En règle générale, le Irql est enregistré sur la pile en tant que variable locale.
Valeur de retour
Aucun
Remarques
Un pilote qui utilise les files d’attente d’appareils fournies par le gestionnaire d’E/S dans l’objet de l’appareil doit contenir le verrou de rotation d’annulation chaque fois qu’il modifie l’état annulable d’un IRP avec IoSetCancelRoutine.
Un pilote qui gère sa propre file d’attente IRP n’a pas besoin de conserver le verrou de rotation d’annulation lors de l’appel IoSetCancelRoutine.
Le titulaire du verrou de rotation d’annulation doit le libérer rapidement en appelant IoReleaseCancelSpinLock.
Une routine d’annulation fournie par le pilote est appelée avec le verrou de rotation d’annulation conservé. Il doit libérer le verrou de rotation d’annulation lorsqu’il a terminé l’IRP à annuler.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 2000 |
d’en-tête | wdm.h |
IRQL | <=DISPATCH_LEVEL |
règles de conformité DDI | cancelSpinLock(storport), CancelSpinLock(wdm), CancelSpinlockRelease(wdm), HwStorPortProhibitedDDIs(storport), SpinLockSafe(storport), SpinLockSafe(wdm) |