Data Structures |
| struct | PRTLP_SRWLOCK_SHARED_WAKE |
| struct | PRTLP_SRWLOCK_WAITBLOCK |
Defines |
| #define | NDEBUG |
| #define | InterlockedBitTestAndSetPointer(ptr, val) InterlockedBitTestAndSet((PLONG)ptr,(LONG)val) |
| #define | InterlockedAddPointer(ptr, val) InterlockedAdd((PLONG)ptr,(LONG)val) |
| #define | InterlockedAndPointer(ptr, val) InterlockedAnd((PLONG)ptr,(LONG)val) |
| #define | InterlockedOrPointer(ptr, val) InterlockedOr((PLONG)ptr,(LONG)val) |
| #define | RTL_SRWLOCK_OWNED_BIT 0 |
| #define | RTL_SRWLOCK_CONTENDED_BIT 1 |
| #define | RTL_SRWLOCK_SHARED_BIT 2 |
| #define | RTL_SRWLOCK_CONTENTION_LOCK_BIT 3 |
| #define | RTL_SRWLOCK_OWNED (1 << RTL_SRWLOCK_OWNED_BIT) |
| #define | RTL_SRWLOCK_CONTENDED (1 << RTL_SRWLOCK_CONTENDED_BIT) |
| #define | RTL_SRWLOCK_SHARED (1 << RTL_SRWLOCK_SHARED_BIT) |
| #define | RTL_SRWLOCK_CONTENTION_LOCK (1 << RTL_SRWLOCK_CONTENTION_LOCK_BIT) |
| #define | RTL_SRWLOCK_MASK |
| #define | RTL_SRWLOCK_BITS 4 |
| #define | ASSERT_SRW_WAITBLOCK(ptr) ASSERT(((ULONG_PTR)ptr & ((1 << RTL_SRWLOCK_BITS) - 1)) == 0) |
Functions |
| static VOID NTAPI | RtlpReleaseWaitBlockLockExclusive (IN OUT PRTL_SRWLOCK SRWLock, IN PRTLP_SRWLOCK_WAITBLOCK FirstWaitBlock) |
| static VOID NTAPI | RtlpReleaseWaitBlockLockLastShared (IN OUT PRTL_SRWLOCK SRWLock, IN PRTLP_SRWLOCK_WAITBLOCK FirstWaitBlock) |
| static VOID NTAPI | RtlpReleaseWaitBlockLock (IN OUT PRTL_SRWLOCK SRWLock) |
static PRTLP_SRWLOCK_WAITBLOCK
NTAPI | RtlpAcquireWaitBlockLock (IN OUT PRTL_SRWLOCK SRWLock) |
| static VOID NTAPI | RtlpAcquireSRWLockExclusiveWait (IN OUT PRTL_SRWLOCK SRWLock, IN PRTLP_SRWLOCK_WAITBLOCK WaitBlock) |
| static VOID NTAPI | RtlpAcquireSRWLockSharedWait (IN OUT PRTL_SRWLOCK SRWLock, IN OUT PRTLP_SRWLOCK_WAITBLOCK FirstWait OPTIONAL, IN OUT PRTLP_SRWLOCK_SHARED_WAKE WakeChain) |
| VOID NTAPI | RtlInitializeSRWLock (OUT PRTL_SRWLOCK SRWLock) |
| VOID NTAPI | RtlAcquireSRWLockShared (IN OUT PRTL_SRWLOCK SRWLock) |
| VOID NTAPI | RtlReleaseSRWLockShared (IN OUT PRTL_SRWLOCK SRWLock) |
| VOID NTAPI | RtlAcquireSRWLockExclusive (IN OUT PRTL_SRWLOCK SRWLock) |
| VOID NTAPI | RtlReleaseSRWLockExclusive (IN OUT PRTL_SRWLOCK SRWLock) |