Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
RxDereference das NodeReferenceCount Element einer Struktur um eins für mehrere referenzierte Datenstrukturen erweitert, die von RDBSS verwendet werden.
Syntax
void RxDereference(
[in, out] IN OUT PVOID Instance,
[in] IN LOCK_HOLDING_STATE LockHoldingState
);
Parameter
[in, out] Instance
Ein Zeiger auf die referenzgezählte Datenstruktur, die abgeleitet werden soll.
[in] LockHoldingState
Der Modus, in dem die entsprechende Sperre für diese Datenstruktur gehalten wird. Dieser Parameter kann einer der folgenden Werte für die LOCK_HOLDING_STATE-Enumeration sein:
LHS_LockNotHeld
Eine Sperre wird zurzeit nicht gehalten.
LHS_SharedLockHeld
Eine freigegebene Sperre wird gehalten.
LHS_ExclusiveLockHeld
Eine exklusive Sperre wird gehalten.
Rückgabewert
Nichts
Bemerkungen
RxDereference- kann verwendet werden, um das NodeReferenceCount-Element in den folgenden von RDBSS verwendeten Datenstrukturen abzuleiten (um eins zu erhöhen):
SRV_CALL
NET_ROOT
V_NET_ROOT
SRV_OPEN
FOBX
Wenn RxDereference- mit einem anderen Typ von RDBSS-Datenstruktur aufgerufen wird, bewirkt die Routine, dass das System bei überprüften Builds ASSERTION ausführt.
Wenn das NodeReferenceCount Member kleiner als 0 ist, nachdem es von RxDereferencedecrementiert wurde, führt RxDereference bewirkt, dass das System bei überprüften Builds ASSERTION ausführt.
Wenn der NodeReferenceCount Member auf 1 erhöht und der LockHoldingState Parameter LHS_ExclusiveLockHeld wurde, kann die Instanz der Datenstruktur sofort abgeschlossen werden. Andernfalls wird die Instanz der Datenstruktur so markiert, dass sie später gerüstet und abgeschlossen werden soll.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | rxprocs.h (include Rxprocs.h) |
IRQL- | <= APC_LEVEL |