49 DPRINT1(
"EngAcquireSemaphore called with hsem == NULL!\n");
55 if (W32Thread) W32Thread->dwEngAcquireCount++;
75 DPRINT1(
"EngReleaseSemaphore called with hsem == NULL!\n");
80 if (W32Thread) --W32Thread->dwEngAcquireCount;
89EngAcquireSemaphoreShared(
97 if (pti) ++pti->dwEngAcquireCount;
168 ASSERT(Semaphore->lCount > 1);
170 while (Semaphore->hsem ==
NULL);
#define InterlockedIncrement
#define InterlockedDecrement
#define _Acquires_lock_(lock)
#define _Requires_lock_held_(lock)
#define _Acquires_exclusive_lock_(lock)
#define _Acquires_shared_lock_(lock)
#define _Requires_lock_not_held_(lock)
#define _Releases_lock_(lock)
#define NT_SUCCESS(StatCode)
#define __drv_freesMem(kind)
#define __drv_allocatesMem(kind)
#define InterlockedExchangePointer(Target, Value)
#define ExAllocatePoolWithTag(hernya, size, tag)
#define PsGetCurrentThread()
NTSTATUS ExInitializeResourceLite(PULONG res)
#define ExDeleteResourceLite(res)
VOID WINAPI EngReleaseSemaphore(IN HSEMAPHORE hsem)
HSEMAPHORE WINAPI EngCreateSemaphore(VOID)
#define ExFreePoolWithTag(_P, _T)
#define _Post_writable_byte_size_(s)
BOOLEAN NTAPI ExIsResourceAcquiredExclusiveLite(IN PERESOURCE Resource)
PVOID NTAPI ExEnterCriticalRegionAndAcquireResourceShared(IN PERESOURCE Resource)
PVOID NTAPI ExEnterCriticalRegionAndAcquireResourceExclusive(IN PERESOURCE Resource)
VOID FASTCALL ExReleaseResourceAndLeaveCriticalRegion(IN PERESOURCE Resource)
PVOID NTAPI PsGetThreadWin32Thread(IN PETHREAD Thread)
#define ASSERT_IRQL_LESS_OR_EQUAL(x)
BOOL APIENTRY EngInitializeSafeSemaphore(_Out_ ENGSAFESEMAPHORE *Semaphore)
_Requires_lock_not_held_ hsem VOID APIENTRY EngDeleteSemaphore(_Inout_ __drv_freesMem(Mem) HSEMAPHORE hsem)
BOOL APIENTRY EngIsSemaphoreOwnedByCurrentThread(_In_ HSEMAPHORE hsem)
BOOL APIENTRY EngIsSemaphoreOwned(_In_ HSEMAPHORE hsem)
VOID APIENTRY EngDeleteSafeSemaphore(_Inout_ _Post_invalid_ ENGSAFESEMAPHORE *pssem)
ENGAPI VOID APIENTRY EngAcquireSemaphore(_Inout_ HSEMAPHORE hsem)