feat(thread): add missing ctor/dtor to CSRWLock

This commit is contained in:
fallenoak 2025-09-01 19:35:57 -05:00
parent 8ba9a76bde
commit 048dab15cd
4 changed files with 34 additions and 0 deletions

View file

@ -1,5 +1,27 @@
#include "storm/thread/CSRWLock.hpp"
CSRWLock::CSRWLock() {
#if defined(WHOA_SYSTEM_WIN)
// TODO
SRWLock::SURWLockInitialize(&this->m_opaqueData);
#endif
#if defined(WHOA_SYSTEM_MAC) || defined(WHOA_SYSTEM_LINUX)
pthread_rwlock_init(&this->m_lock, nullptr);
#endif
}
CSRWLock::~CSRWLock() {
#if defined(WHOA_SYSTEM_WIN)
SRWLock::SURWLockDelete(&this->m_opaqueData);
// TODO
#endif
#if defined(WHOA_SYSTEM_MAC) || defined(WHOA_SYSTEM_LINUX)
pthread_rwlock_destroy(&this->m_lock);
#endif
}
void CSRWLock::Enter(int32_t forwriting) {
#if defined(WHOA_SYSTEM_WIN)
SRWLock::SURWLockEnter(&this->m_opaqueData, forwriting);