feat(thread): add SCritSect constructor

This commit is contained in:
fallenoak 2022-12-28 15:43:57 -06:00 committed by GitHub
parent 61d2c8d01e
commit 665f057516
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 32 additions and 0 deletions

View file

@ -1,5 +1,19 @@
#include "storm/thread/SCritSect.hpp"
SCritSect::SCritSect() {
#if defined(WHOA_SYSTEM_WIN)
InitializeCriticalSection(&this->m_opaqueData);
#endif
#if defined(WHOA_SYSTEM_MAC) || defined(WHOA_SYSTEM_LINUX)
pthread_mutexattr_t attr;
pthread_mutexattr_init(&attr);
pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
pthread_mutex_init(&this->m_mutex, &attr);
#endif
}
void SCritSect::Enter() {
#if defined(WHOA_SYSTEM_WIN)
EnterCriticalSection(&this->m_opaqueData);

View file

@ -21,6 +21,7 @@ class SCritSect {
#endif
// Member functions
SCritSect();
void Enter(void);
void Leave(void);
};