C++ common classes
General purpose classes for use across projects (Apache license)
|
#include <CXPlatCriticalSection.h>
Public Member Functions | |
CXPlatCriticalSection () | |
Constructor. | |
~CXPlatCriticalSection () | |
Destructor. | |
int | Lock (DWORD dwWait=INFINITE) |
Tries to obtain exclusive access. | |
int | Unlock () |
Releases exclusive access. | |
Protected Attributes | |
pthread_mutex_t | m_csHandle |
pthread_t | lock_id |
int | lock_count |
Friends | |
class | CXPlatEvent |
Cross plaform synchronization class
On Windows, critical sections are "cheaper" than interprocess mutexes (mutii?)
Definition at line 26 of file CXPlatCriticalSection.h.
Constructor.
Definition at line 26 of file CXPlatCriticalSection.cpp.
Destructor.
Definition at line 38 of file CXPlatCriticalSection.cpp.
int CXPlatCriticalSection::Lock | ( | DWORD | dwWait = INFINITE | ) |
Tries to obtain exclusive access.
Definition at line 49 of file CXPlatCriticalSection.cpp.
int CXPlatCriticalSection::Unlock | ( | ) |
Releases exclusive access.
Definition at line 88 of file CXPlatCriticalSection.cpp.
friend class CXPlatEvent [friend] |
Definition at line 28 of file CXPlatCriticalSection.h.
int CXPlatCriticalSection::lock_count [protected] |
Definition at line 46 of file CXPlatCriticalSection.h.
pthread_t CXPlatCriticalSection::lock_id [protected] |
Definition at line 45 of file CXPlatCriticalSection.h.
pthread_mutex_t CXPlatCriticalSection::m_csHandle [protected] |
Definition at line 44 of file CXPlatCriticalSection.h.