Freigeben über


KeReadStateSemaphore-Funktion (wdm.h)

Die KeReadStateSemaphor Routine gibt den aktuellen Zustand, signalisiert oder nicht signalisiert, des angegebenen Semaphorobjekts zurück.

Syntax

LONG KeReadStateSemaphore(
  [in] PRKSEMAPHORE Semaphore
);

Parameter

[in] Semaphore

Zeigen Sie auf ein initialisiertes Semaphorobjekt, für das der Aufrufer den Speicher bereitstellt.

Rückgabewert

Wenn der Rückgabewert null ist, wird das Semaphorobjekt auf einen nicht signalisierten Zustand festgelegt.

Bemerkungen

Diese Routine bietet eine effiziente Möglichkeit, den Signalzustand eines Semaphors abzufragen. KeReadStateSemaphor liest den Zustand des Semaphors vor, ohne den Zugang zum Semaphor zu synchronisieren. Gehen Sie nicht davon aus, dass der Zugriff auf einen Semaphorstatus durch KeReadStateSemaphore sich gegenseitig von Zugriffen durch Routinen ausschließen, wie z. B. KeReleaseSemaphore und KeWaitForSingleObject, die ihren Zugriff auf den Semaphorzustand synchronisieren.

Weitere Informationen zu Semaphorobjekten finden Sie unter Semaphor-Objekte.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Ab Windows 2000 verfügbar.
Zielplattform- Universal
Header- wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- Beliebige Ebene
DDI-Complianceregeln HwStorPortProhibitedDIs(storport)

Siehe auch

KeInitializeSemaphor

KeReleaseSemaphor

KeWaitForSingleObject