diff options
Diffstat (limited to 'includes/Threads.h')
-rw-r--r-- | includes/Threads.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/includes/Threads.h b/includes/Threads.h index f6aed5a..67143ca 100644 --- a/includes/Threads.h +++ b/includes/Threads.h @@ -20,6 +20,17 @@ class Lock { friend class Queue; }; +class RWLock { + public: + RWLock(); + ~RWLock() { pthread_rwlock_destroy(&m_lock); } + void enterR() { pthread_rwlock_rdlock(&m_lock); } + void enterW() { pthread_rwlock_wrlock(&m_lock); } + void leave() { pthread_rwlock_unlock(&m_lock); } + private: + pthread_rwlock_t m_lock; +}; + class ThreadHelper; class Thread { |