diff options
author | nw1 <nw1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1997-07-30 09:36:54 +0000 |
---|---|---|
committer | nw1 <nw1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1997-07-30 09:36:54 +0000 |
commit | 035e2fdfb81911d5e2a7f008e29d12fbf027ff42 (patch) | |
tree | b2d2673e5c006a659cb3fa2db85292ef68f647bf /ace/Service_Repository.cpp | |
parent | 61f5e66b55cc7985293d34f2fb4b48940fc023a7 (diff) | |
download | ATCD-035e2fdfb81911d5e2a7f008e29d12fbf027ff42.tar.gz |
Modified to use ACE_Static_Object_Lock for singleton.
Diffstat (limited to 'ace/Service_Repository.cpp')
-rw-r--r-- | ace/Service_Repository.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/ace/Service_Repository.cpp b/ace/Service_Repository.cpp index b6e5f0a0aae..e781d11fdb1 100644 --- a/ace/Service_Repository.cpp +++ b/ace/Service_Repository.cpp @@ -10,11 +10,6 @@ ACE_ALLOC_HOOK_DEFINE(ACE_Service_Repository) -#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0) -// Lock the creation of the Singletons. -static ACE_Thread_Mutex ace_service_repository_lock_; -#endif /* ACE_MT_SAFE */ - // Process-wide Service Repository. ACE_Service_Repository *ACE_Service_Repository::svc_rep_ = 0; @@ -44,7 +39,8 @@ ACE_Service_Repository::instance (int size /* = ACE_Service_Repository::DEFAULT_ if (ACE_Service_Repository::svc_rep_ == 0) { // Perform Double-Checked Locking Optimization. - ACE_MT (ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, ace_service_repository_lock_, 0)); + ACE_MT (ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, + *ACE_Static_Object_Lock::get_lock (), 0)); if (ACE_Service_Repository::svc_rep_ == 0) { @@ -59,7 +55,8 @@ ACE_Service_Repository * ACE_Service_Repository::instance (ACE_Service_Repository *s) { ACE_TRACE ("ACE_Service_Repository::instance"); - ACE_MT (ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, ace_service_repository_lock_, 0)); + ACE_MT (ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, + *ACE_Static_Object_Lock::get_lock (), 0)); ACE_Service_Repository *t = ACE_Service_Repository::svc_rep_; // We can't safely delete it since we don't know who created it! @@ -74,7 +71,8 @@ ACE_Service_Repository::close_singleton (void) { ACE_TRACE ("ACE_Service_Repository::close_singleton"); - ACE_MT (ACE_GUARD (ACE_Thread_Mutex, ace_mon, ace_service_repository_lock_)); + ACE_MT (ACE_GUARD (ACE_Thread_Mutex, ace_mon, + *ACE_Static_Object_Lock::get_lock ())); if (ACE_Service_Repository::delete_svc_rep_) { |