mirror of
https://github.com/mirror/processhacker
synced 2026-06-08 16:03:24 +00:00
d4bab7a33a
* fixed x64 compiler warnings * fixed reference leak git-svn-id: svn://svn.code.sf.net/p/processhacker/code@2527 21ef857c-d57f-4fe0-8362-d861dc6d29cd
56 lines
1022 B
C
56 lines
1022 B
C
#ifndef FASTLOCK_H
|
|
#define FASTLOCK_H
|
|
|
|
#include <base.h>
|
|
|
|
// FastLock is a port of FastResourceLock from PH 1.x.
|
|
|
|
#if _M_X64
|
|
#include <pshpack8.h>
|
|
#endif
|
|
typedef struct _PH_FAST_LOCK
|
|
{
|
|
ULONG Value;
|
|
HANDLE ExclusiveWakeEvent;
|
|
HANDLE SharedWakeEvent;
|
|
} PH_FAST_LOCK, *PPH_FAST_LOCK;
|
|
#if _M_X64
|
|
#include <poppack.h>
|
|
#endif
|
|
|
|
VOID PhFastLockInitialization();
|
|
|
|
VOID PhInitializeFastLock(
|
|
__out PPH_FAST_LOCK FastLock
|
|
);
|
|
|
|
VOID PhDeleteFastLock(
|
|
__inout PPH_FAST_LOCK FastLock
|
|
);
|
|
|
|
VOID PhAcquireFastLockExclusive(
|
|
__inout PPH_FAST_LOCK FastLock
|
|
);
|
|
|
|
VOID PhAcquireFastLockShared(
|
|
__inout PPH_FAST_LOCK FastLock
|
|
);
|
|
|
|
VOID PhReleaseFastLockExclusive(
|
|
__inout PPH_FAST_LOCK FastLock
|
|
);
|
|
|
|
VOID PhReleaseFastLockShared(
|
|
__inout PPH_FAST_LOCK FastLock
|
|
);
|
|
|
|
BOOLEAN PhTryAcquireFastLockExclusive(
|
|
__inout PPH_FAST_LOCK FastLock
|
|
);
|
|
|
|
BOOLEAN PhTryAcquireFastLockShared(
|
|
__inout PPH_FAST_LOCK FastLock
|
|
);
|
|
|
|
#endif
|