summaryrefslogtreecommitdiffstats
path: root/source/cCriticalSection.cpp
diff options
context:
space:
mode:
authormadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2012-09-23 23:23:33 +0200
committermadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2012-09-23 23:23:33 +0200
commit7abb5f7604bb9a0a716e89f3b27e330b016a38b9 (patch)
tree7ccaea302b953c239a0d60548b6f7bcaf72e6527 /source/cCriticalSection.cpp
parentSource files cleanup: Removed unused cBlockToPickup (diff)
downloadcuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar.gz
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar.bz2
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar.lz
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar.xz
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar.zst
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.zip
Diffstat (limited to 'source/cCriticalSection.cpp')
-rw-r--r--source/cCriticalSection.cpp187
1 files changed, 0 insertions, 187 deletions
diff --git a/source/cCriticalSection.cpp b/source/cCriticalSection.cpp
deleted file mode 100644
index 47e2c2c2d..000000000
--- a/source/cCriticalSection.cpp
+++ /dev/null
@@ -1,187 +0,0 @@
-
-#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
-#include "cIsThread.h"
-
-
-
-
-
-///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-// cCriticalSection:
-
-cCriticalSection::cCriticalSection()
-{
-#ifdef _WIN32
- InitializeCriticalSection( &m_CriticalSection );
-#else
- m_Attributes = new pthread_mutexattr_t;
- pthread_mutexattr_init((pthread_mutexattr_t*)m_Attributes);
- pthread_mutexattr_settype((pthread_mutexattr_t*)m_Attributes, PTHREAD_MUTEX_RECURSIVE);
-
- m_CriticalSectionPtr = new pthread_mutex_t;
- if( pthread_mutex_init( (pthread_mutex_t*)m_CriticalSectionPtr, (pthread_mutexattr_t*)m_Attributes ) != 0 )
- {
- LOG("ERROR: Could not initialize Critical Section!");
- }
-#endif
-}
-
-
-
-
-
-cCriticalSection::~cCriticalSection()
-{
-#ifdef _WIN32
- DeleteCriticalSection( &m_CriticalSection );
-#else
- if( pthread_mutex_destroy( (pthread_mutex_t*)m_CriticalSectionPtr ) != 0 )
- {
- LOG("ERROR: Could not destroy Critical Section!");
- }
- delete (pthread_mutex_t*)m_CriticalSectionPtr;
- pthread_mutexattr_destroy( (pthread_mutexattr_t*)m_Attributes );
- delete (pthread_mutexattr_t*)m_Attributes;
-#endif
-}
-
-
-
-
-
-void cCriticalSection::Lock()
-{
- #ifdef _WIN32
- EnterCriticalSection( &m_CriticalSection );
- #else
- pthread_mutex_lock( (pthread_mutex_t*)m_CriticalSectionPtr );
- #endif
-
- #ifdef _DEBUG
- m_IsLocked = true;
- m_OwningThreadID = cIsThread::GetCurrentID();
- #endif // _DEBUG
-}
-
-
-
-
-
-void cCriticalSection::Unlock()
-{
- #ifdef _DEBUG
- m_IsLocked = false;
- #endif // _DEBUG
-
- #ifdef _WIN32
- LeaveCriticalSection( &m_CriticalSection );
- #else
- pthread_mutex_unlock( (pthread_mutex_t*)m_CriticalSectionPtr );
- #endif
-}
-
-
-
-
-
-#ifdef _DEBUG
-bool cCriticalSection::IsLocked(void)
-{
- return m_IsLocked;
-}
-
-
-
-
-
-bool cCriticalSection::IsLockedByCurrentThread(void)
-{
- return m_IsLocked && (m_OwningThreadID == cIsThread::GetCurrentID());
-}
-#endif // _DEBUG
-
-
-
-
-
-///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-// cCSLock
-
-cCSLock::cCSLock(cCriticalSection * a_CS)
- : m_CS(a_CS)
- , m_IsLocked(false)
-{
- Lock();
-}
-
-
-
-
-
-cCSLock::cCSLock(cCriticalSection & a_CS)
- : m_CS(&a_CS)
- , m_IsLocked(false)
-{
- Lock();
-}
-
-
-
-
-
-cCSLock::~cCSLock()
-{
- if (!m_IsLocked)
- {
- return;
- }
- Unlock();
-}
-
-
-
-
-
-void cCSLock::Lock(void)
-{
- ASSERT(!m_IsLocked);
- m_IsLocked = true;
- m_CS->Lock();
-}
-
-
-
-
-
-void cCSLock::Unlock(void)
-{
- ASSERT(m_IsLocked);
- m_IsLocked = false;
- m_CS->Unlock();
-}
-
-
-
-
-
-///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-// cCSUnlock:
-
-cCSUnlock::cCSUnlock(cCSLock & a_Lock) :
- m_Lock(a_Lock)
-{
- m_Lock.Unlock();
-}
-
-
-
-
-
-cCSUnlock::~cCSUnlock()
-{
- m_Lock.Lock();
-}
-
-
-
-