about summary refs log tree commit diff
path: root/src/base/system.h
diff options
context:
space:
mode:
authoroy <tom_adams@web.de>2012-01-03 15:40:30 -0800
committeroy <tom_adams@web.de>2012-01-03 15:40:30 -0800
commit7328098f8d03e65975ec82162d2049f46fed223d (patch)
tree1c42d719df3971a3a8558a6a1a30c68b4b6f574e /src/base/system.h
parentc975390195eed17c615bbebfab981a2394dec424 (diff)
parent7393151b6d4cbfd8c4be29145344dcce22aa47d7 (diff)
downloadzcatch-7328098f8d03e65975ec82162d2049f46fed223d.tar.gz
zcatch-7328098f8d03e65975ec82162d2049f46fed223d.zip
Merge pull request #912 from matricks/threadedflip
Threadedflip
Diffstat (limited to 'src/base/system.h')
-rw-r--r--src/base/system.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/base/system.h b/src/base/system.h
index 5060fcb0..b3588dbf 100644
--- a/src/base/system.h
+++ b/src/base/system.h
@@ -400,6 +400,23 @@ int lock_try(LOCK lock);
 void lock_wait(LOCK lock);
 void lock_release(LOCK lock);
 
+
+/* Group: Semaphores */
+
+#if defined(CONF_FAMILY_UNIX)
+	#include <semaphore.h>
+	typedef sem_t SEMAPHORE;
+#elif defined(CONF_FAMILY_WINDOWS)
+	typedef void* SEMAPHORE;
+#else
+	#error missing sempahore implementation
+#endif
+
+void semaphore_init(SEMAPHORE *sem);
+void semaphore_wait(SEMAPHORE *sem);
+void semaphore_signal(SEMAPHORE *sem);
+void semaphore_destroy(SEMAPHORE *sem);
+
 /* Group: Timer */
 #ifdef __GNUC__
 /* if compiled with -pedantic-errors it will complain about long