summaryrefslogtreecommitdiffstats
path: root/core/os/semaphore.h
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2024-01-18 09:33:52 +0100
committerRémi Verschelde <rverschelde@gmail.com>2024-01-18 09:33:52 +0100
commitfa81059b9d5c763c4775708d4832bf8bfc1dda80 (patch)
tree8acc89e6e12558fe003a07fe4acd02a9bba7b3e3 /core/os/semaphore.h
parentb5dcb5f58aec77f8e282ff134f279c7bc7467e8e (diff)
parentbd70b8e1f643dbf7252be9bc367e0de0f82d722d (diff)
downloadredot-engine-fa81059b9d5c763c4775708d4832bf8bfc1dda80.tar.gz
Merge pull request #85939 from adamscott/single-threaded-godot-4
Add `THREADS_ENABLED` macro in order to compile Godot to run on the main thread
Diffstat (limited to 'core/os/semaphore.h')
-rw-r--r--core/os/semaphore.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/core/os/semaphore.h b/core/os/semaphore.h
index b8ae35b86b..19ef1dedc0 100644
--- a/core/os/semaphore.h
+++ b/core/os/semaphore.h
@@ -31,6 +31,10 @@
#ifndef SEMAPHORE_H
#define SEMAPHORE_H
+#include <cstdint>
+
+#ifdef THREADS_ENABLED
+
#include "core/error/error_list.h"
#include "core/typedefs.h"
#ifdef DEBUG_ENABLED
@@ -132,4 +136,17 @@ public:
#endif
};
+#else // No threads.
+
+class Semaphore {
+public:
+ void post(uint32_t p_count = 1) const {}
+ void wait() const {}
+ bool try_wait() const {
+ return true;
+ }
+};
+
+#endif // THREADS_ENABLED
+
#endif // SEMAPHORE_H