diff options
author | Leon Krause <lk@leonkrause.com> | 2018-03-20 04:15:27 +0100 |
---|---|---|
committer | Leon Krause <lk@leonkrause.com> | 2018-03-20 05:37:42 +0100 |
commit | 25800ffb0e9acfe9e63608eb44979f27c33fc6c1 (patch) | |
tree | 6f54b488629466d0ff42d129431fa5cc84943d74 /core/os | |
parent | c4a8b8f7c52f90ff12a8f3df60c3a4468f7626bf (diff) |
Add RWLockDummy for NO_THREADS builds
Diffstat (limited to 'core/os')
-rw-r--r-- | core/os/thread_dummy.cpp | 8 | ||||
-rw-r--r-- | core/os/thread_dummy.h | 17 |
2 files changed, 25 insertions, 0 deletions
diff --git a/core/os/thread_dummy.cpp b/core/os/thread_dummy.cpp index fa0bb3dafd..b6371235c4 100644 --- a/core/os/thread_dummy.cpp +++ b/core/os/thread_dummy.cpp @@ -55,3 +55,11 @@ Semaphore *SemaphoreDummy::create() { void SemaphoreDummy::make_default() { Semaphore::create_func = &SemaphoreDummy::create; }; + +RWLock *RWLockDummy::create() { + return memnew(RWLockDummy); +}; + +void RWLockDummy::make_default() { + RWLock::create_func = &RWLockDummy::create; +}; diff --git a/core/os/thread_dummy.h b/core/os/thread_dummy.h index b67b52a726..74957b95fe 100644 --- a/core/os/thread_dummy.h +++ b/core/os/thread_dummy.h @@ -32,6 +32,7 @@ #define THREAD_DUMMY_H #include "mutex.h" +#include "rw_lock.h" #include "semaphore.h" #include "thread.h" @@ -69,4 +70,20 @@ public: static void make_default(); }; +class RWLockDummy : public RWLock { + + static RWLock *create(); + +public: + virtual void read_lock() {} + virtual void read_unlock() {} + virtual Error read_try_lock() { return OK; } + + virtual void write_lock() {} + virtual void write_unlock() {} + virtual Error write_try_lock() { return OK; } + + static void make_default(); +}; + #endif |