summaryrefslogtreecommitdiff
path: root/ace
diff options
context:
space:
mode:
Diffstat (limited to 'ace')
-rw-r--r--ace/Dynamic.cpp9
-rw-r--r--ace/Thread_Manager.cpp4
2 files changed, 8 insertions, 5 deletions
diff --git a/ace/Dynamic.cpp b/ace/Dynamic.cpp
index 8b3ddd504fd..f32606a5d1f 100644
--- a/ace/Dynamic.cpp
+++ b/ace/Dynamic.cpp
@@ -3,6 +3,8 @@
#define ACE_BUILD_DLL
#include "ace/Dynamic.h"
+#include "ace/Singleton.h"
+#include "ace/Synch_T.h"
#if !defined (__ACE_INLINE__)
#include "ace/Dynamic.i"
@@ -11,8 +13,13 @@
ACE_RCSID(ace, Dynamic, "$Id$")
ACE_Dynamic::ACE_Dynamic (void)
- : is_dynamic_ (0)
+ : is_dynamic_ (0)
{
ACE_TRACE ("ACE_Dynamic::ACE_Dynamic");
}
+#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
+ template class ACE_TSS_Singleton<ACE_Dynamic, ACE_Null_Mutex>;
+#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+ #pragma instantiate ACE_TSS_Singleton<ACE_Dynamic, ACE_Null_Mutex>
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
diff --git a/ace/Thread_Manager.cpp b/ace/Thread_Manager.cpp
index 7f3dd2a104c..81538023c17 100644
--- a/ace/Thread_Manager.cpp
+++ b/ace/Thread_Manager.cpp
@@ -2115,8 +2115,6 @@ ACE_Thread_Control::exit (void *exit_status, int do_thr_exit)
template class ACE_Node<ACE_Thread_Descriptor*>;
template class ACE_Double_Linked_List<ACE_Thread_Descriptor>;
template class ACE_Double_Linked_List_Iterator<ACE_Thread_Descriptor>;
- // This doesn't necessarily belong here, but it's a convenient place for it.
- template class ACE_TSS_Singleton<ACE_Dynamic, ACE_Null_Mutex>;
template class ACE_Free_List<ACE_Thread_Descriptor>;
template class ACE_Locked_Free_List<ACE_Thread_Descriptor, ACE_DEFAULT_THREAD_MANAGER_LOCK>;
# if (defined (ACE_HAS_THREADS) && (defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || defined (ACE_HAS_TSS_EMULATION)))
@@ -2133,8 +2131,6 @@ ACE_Thread_Control::exit (void *exit_status, int do_thr_exit)
#pragma instantiate ACE_Node<ACE_Thread_Descriptor*>
#pragma instantiate ACE_Double_Linked_List<ACE_Thread_Descriptor>
#pragma instantiate ACE_Double_Linked_List_Iterator<ACE_Thread_Descriptor>
- // This doesn't necessarily belong here, but it's a convenient place for it.
- #pragma instantiate ACE_TSS_Singleton<ACE_Dynamic, ACE_Null_Mutex>
#pragma instantiate ACE_Free_List<ACE_Thread_Descriptor>
#pragma instantiate ACE_Locked_Free_List<ACE_Thread_Descriptor, ACE_DEFAULT_THREAD_MANAGER_LOCK>
# if (defined (ACE_HAS_THREADS) && (defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || defined (ACE_HAS_TSS_EMULATION)))