Freigeben über


KeReadStateSemaphore-Funktion (wdm.h)

Die KeReadStateSemaphore-Routine gibt den aktuellen Zustand des angegebenen Semaphorobjekts zurück, der signalisiert oder nicht signalisiert ist.

Syntax

LONG KeReadStateSemaphore(
  [in] PRKSEMAPHORE Semaphore
);

Parameter

[in] Semaphore

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

Rückgabewert

Wenn der Rückgabewert 0 ist, wird das Semaphorobjekt auf einen nicht signalgeschützten Zustand festgelegt.

Hinweise

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

Weitere Informationen zu Semaphorobjekten finden Sie unter Semaphor-Objekte.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows 2000.
Zielplattform Universell
Header wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Beliebige Ebene
DDI-Complianceregeln HwStorPortProhibitedDDIs(storport)

Weitere Informationen

KeInitializeSemaphor

KeReleaseSemaphor

KeWaitForSingleObject