39 typedef enum {Locked, Unlocked} LockState;
56 boost::atomic<LockState>
m_iBusy;
61 boost::thread::id m_dwOwner;
68 #pragma region InternalLocker
115 boost::atomic<LockState> &
m_iBusy;
153 bool Enter(
long lMilliTimeout = -1);
~CStdCriticalSectionInternal()
Destructor.
ULONG m_ulRefCnt
The number of reference counts to this critical section.
const InternalLocker & operator=(const InternalLocker &src)
Assignment operator.
CStdCriticalSectionInternal()
Default constructor.
bool TryEnter()
Gets the try enter.
std::atomic< int > & m_iBusy
Tells if this is busy.
Standard critical section.
bool Leave()
Leaves this critical section.
std::atomic< int > m_iBusy
Tells if this critical section is currently being used.
Namespace for the standard utility objects.
InternalLocker()
Default constructor.
Standard critical section.
~InternalLocker()
Finaliser.
bool Enter(long lMilliTimeout=-1)
Try's to enter the critical section. Waits until it can get in, or until timeout. ...