summaryrefslogtreecommitdiff
path: root/ace/Synch.h
diff options
context:
space:
mode:
authornw1 <nw1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-07-30 09:34:43 +0000
committernw1 <nw1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-07-30 09:34:43 +0000
commit15a37763ec679a51a354e3997f7155ea668091b4 (patch)
tree01ab7d7d75720ee563e3b4fb23ca3f149353df7f /ace/Synch.h
parent7f30bb93d576ab91b9b437df1336481aed7b003c (diff)
downloadATCD-15a37763ec679a51a354e3997f7155ea668091b4.tar.gz
Added class ACE_Static_Object_Lock.
Diffstat (limited to 'ace/Synch.h')
-rw-r--r--ace/Synch.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/ace/Synch.h b/ace/Synch.h
index 02153957d6a..2db05eefed4 100644
--- a/ace/Synch.h
+++ b/ace/Synch.h
@@ -1216,6 +1216,26 @@ public:
// Declare the dynamic allocation hooks.
};
+class ACE_Export ACE_Static_Object_Lock
+ // = TITLE
+ // Provide an interface to access a global lock.
+ //
+ // = DESCRIPTION
+ // This class is used to serialize the creation of
+ // static singleton objects.
+{
+public:
+ static ACE_Thread_Mutex *get_lock (void);
+ // static lock access point
+
+ static void atexit (void);
+ // clean things up when program exit
+
+private:
+ static ACE_Thread_Mutex *mutex_;
+ // pointer to actual lock
+};
+
#endif /* ACE_HAS_THREADS */
#if defined (__ACE_INLINE__)