Public Methods | |
| ACE_Object_Manager_Manager (void) | |
| ~ACE_Object_Manager_Manager (void) | |
Private Attributes | |
| ACE_thread_t | saved_main_thread_id_ |
| Save the main thread ID, so that destruction can be suppressed. More... | |
Without ACE_HAS_NONSTATIC_OBJECT_MANAGER, a static instance of this class is created. Therefore, it gets created before main () is called. And it gets destroyed after main () returns.
Definition at line 734 of file Object_Manager.cpp.
|
|
Definition at line 745 of file Object_Manager.cpp. References ACE_Object_Manager::instance.
00746 : saved_main_thread_id_ (ACE_OS::thr_self ()) 00747 { 00748 // Ensure that the Object_Manager gets initialized before any 00749 // application threads have been spawned. Because this will be called 00750 // during construction of static objects, that should always be the 00751 // case. 00752 (void) ACE_Object_Manager::instance (); 00753 } |
|
|
Definition at line 755 of file Object_Manager.cpp. References ACE_Object_Manager::instance_, saved_main_thread_id_, ACE_OS::thr_equal, and ACE_OS::thr_self.
00756 {
00757 if (ACE_OS::thr_equal (ACE_OS::thr_self (),
00758 saved_main_thread_id_))
00759 {
00760 delete ACE_Object_Manager::instance_;
00761 ACE_Object_Manager::instance_ = 0;
00762 }
00763 // else if this destructor is not called by the main thread, then do
00764 // not delete the ACE_Object_Manager. That causes problems, on
00765 // WIN32 at least.
00766 }
|
|
|
Save the main thread ID, so that destruction can be suppressed.
Definition at line 742 of file Object_Manager.cpp. Referenced by ~ACE_Object_Manager_Manager. |
1.2.14 written by Dimitri van Heesch,
© 1997-2002