summaryrefslogtreecommitdiff
path: root/ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/base/sem.h
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/base/sem.h')
-rw-r--r--ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/base/sem.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/base/sem.h b/ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/base/sem.h
new file mode 100644
index 00000000000..00fec3bfe6d
--- /dev/null
+++ b/ACE/apps/JAWS/clients/WebSTONE/src/nsapi-includes/base/sem.h
@@ -0,0 +1,70 @@
+/*
+ * $Id$
+ *
+ * Copyright (c) 1994, 1995. Netscape Communications Corporation. All
+ * rights reserved.
+ *
+ * Use of this software is governed by the terms of the license agreement for
+ * the Netscape Communications or Netscape Comemrce Server between the
+ * parties.
+ */
+
+
+/* ------------------------------------------------------------------------ */
+
+
+/*
+ * sem.h: Attempt to provide multi-process semaphores across platforms
+ *
+ * Rob McCool
+ */
+
+
+#ifndef SEM_H
+#define SEM_H
+
+#include "systems.h"
+
+
+/* All of the implementations currently use int as the semaphore type */
+#ifdef SEM_WIN32
+typedef HANDLE SEMAPHORE;
+#define SEM_ERROR 0
+/* That oughta hold them (I hope) */
+#define SEM_MAXVALUE 32767
+
+#else /* ! SEM_WIN32 */
+typedef int SEMAPHORE;
+#define SEM_ERROR -1
+#endif /* SEM_WIN32 */
+
+/*
+ * sem_init creates a semaphore using the given name and unique
+ * identification number. filename should be a file accessible to the
+ * process. Returns SEM_ERROR on error.
+ */
+
+SEMAPHORE sem_init(char *name, int number);
+
+/*
+ * sem_terminate de-allocates the given semaphore.
+ */
+
+void sem_terminate(SEMAPHORE id);
+
+/*
+ * sem_grab attempts to gain exclusive access to the given semaphore. If
+ * it can't get it, the caller will block. Returns -1 on error.
+ */
+
+int sem_grab(SEMAPHORE id);
+
+/*
+ * sem_release releases this process's exclusive control over the given
+ * semaphore. Returns -1 on error.
+ */
+
+int sem_release(SEMAPHORE id);
+
+
+#endif