Fonction IoAcquireCancelSpinLock (wdm.h)
La routine IoAcquireCancelSpinLock synchronise les transitions d’état annulable pour les irPs de manière sécurisée pour les multiprocesseurs.
Syntaxe
void IoAcquireCancelSpinLock(
PKIRQL Irql
);
Paramètres
Irql
[out] Pointeur vers une variable dans laquelle enregistrer l’IRQL actuel pour un appel ultérieur à IoReleaseCancelSpinLock. En règle générale, l’Irql est enregistré sur la pile en tant que variable locale.
Valeur de retour
None
Remarques
Un pilote qui utilise les files d’attente d’appareil fournies par le gestionnaire d’E/S dans l’objet d’appareil doit conserver 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 contenir le verrou d’annulation de rotation lors de l’appel de IoSetCancelRoutine.
Le titulaire du verrou d’annulation de rotation doit le libérer rapidement en appelant IoReleaseCancelSpinLock.
Une routine d’annulation fournie par le pilote est appelée avec le verrou d’annulation de rotation maintenu. Il doit libérer le verrou de rotation d’annulation lorsqu’il a terminé l’IRP pour être annulé.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 |
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) |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour