Condividi tramite


Macro KeReleaseSpinLock (wdm.h)

La routine KeReleaseSpinLock rilascia un blocco spin e ripristina l'IRQL originale in cui era in esecuzione il chiamante.

Sintassi

VOID
KeReleaseSpinLock (
    _Inout_ PKSPIN_LOCK SpinLock,
    _In_ _IRQL_restores_ KIRQL NewIrql
    );

Parametri

[in] SpinLock

Puntatore a un blocco di selezione KSPIN_LOCK per il quale il chiamante fornisce l'archiviazione.

[in, out] NewIrql

Specifica il valore KIRQL salvato dalla chiamata precedente a KeAcquireSpinLock.

Valore restituito

Nessuno

Osservazioni

Questa chiamata è reciproca per KeAcquireSpinLock. Il valore di input NewIrql deve essere il OldIrql restituito da KeAcquireSpinLock.

Per altre informazioni sui blocchi di selezione, vedere Spin Locks.

I chiamanti di questa routine vengono eseguiti in IRQL = DISPATCH_LEVEL. Al ritorno da KeReleaseSpinLock, IRQL viene ripristinato nel valore NewIrql.

Fabbisogno

Requisito Valore
client minimo supportato Disponibile a partire da Windows 2000.
piattaforma di destinazione Universale
intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
libreria Hal.lib
IRQL DISPATCH_LEVEL (vedere la sezione Osservazioni)
regole di conformità DDI HwStorPortProhibitedDDDIs(storport), IrqlKeReleaseSpinLock(storport), IrqlKeReleaseSpinLock(storport), IrqlKeReleaseSpinLock(wdm), MarkingQueuedIrps(wdm), ReqSendWhileSpinlock(kmdf), Spinlock(kmdf), Spinlock(kmdf), SpinLock(storport), SpinLock(storport), SpinLock(wdm), SpinlockDpc(kmdf) ), SpinlockDpc(kmdf), SpinLockDpc(storport), SpinLockDpc(storport), SpinLockDpc(wdm), SpinlockRelease(kmdf), SpinlockRelease(kmdf), SpinLockRelease(storport), SpinLockRelease(storport), SpinlockRelease(wdm), SpinLockSafe(storport), SpinLockSafe(storport), SpinLockSafe(wdm)

Vedere anche

KeAcquireSpinLock

KeInitializeSpinLock