ExAcquireSpinLockSharedAtDpcLevel-Funktion (wdm.h)
Die ExAcquireSpinLockSharedAtDpcLevel Routine ruft eine Spin lock für den gemeinsamen Zugriff durch einen Aufrufer ab, der bereits bei IRQL >= DISPATCH_LEVEL ausgeführt wird.
Syntax
void ExAcquireSpinLockSharedAtDpcLevel(
PEX_SPIN_LOCK SpinLock
);
Parameter
SpinLock
[in, out] Ein Zeiger auf die Drehungssperre, die für den freigegebenen Zugriff erworben werden soll. Der Aufrufer darf diese Drehsperre nicht bereits besitzen.
Rückgabewert
Nichts
Bemerkungen
Bei der Eingabe in diese Routine muss der Aufrufer bei IRQL >= DISPATCH_LEVEL ausgeführt werden. Diese Routine ändert die IRQL nicht.
Um die Drehsperre freizugeben, ruft der Treiber die ExReleaseSpinLockSharedFromDpcLevel Routine auf.
Eine Drehsperre ist eine 32-Bit-Variable vom Typ EX_SPIN_LOCK. Der Treiber muss den Speicher für die Drehsperre zuordnen und die Drehsperre auf Null initialisieren. Dieser Speicher muss sich im nicht ausgelagerten Systemspeicher befinden.
Der Anrufer sollte die Drehsperre nur kurz halten, bevor er losgelassen wird. Weitere Informationen finden Sie unter Einführung in Spin Locks.
Rekursives Erwerben einer Drehsperre bewirkt deadlock und ist nicht zulässig.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows Vista SP1 |
Header- | wdm.h |
IRQL- | IRQL->= DISPATCH_LEVEL |