Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK > Class Template Reference

Same as ACE_TSS_Singleton, except does _not_ register with ACE_Object_Manager for destruction. More...

#include <Singleton.h>

Inheritance diagram for ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK >:

Inheritance graph
[legend]
Collaboration diagram for ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK >:

Collaboration graph
[legend]
List of all members.

Static Public Methods

TYPE * instance (void)
 Global access point to the singleton.

void close (void)
 Explicitly delete the singleton instance.

void dump (void)
 Dump the state of the object.


Protected Methods

 ACE_Unmanaged_TSS_Singleton (void)
 Default constructor.


Static Protected Methods

ACE_Unmanaged_TSS_Singleton<
TYPE, ACE_LOCK > *& 
instance_i (void)
 Get pointer to the Singleton instance.


Static Protected Attributes

ACE_Unmanaged_TSS_Singleton<
TYPE, ACE_LOCK > * 
singleton_ = 0
 Pointer to the Singleton (ACE_Cleanup) instance.


Detailed Description

template<class TYPE, class ACE_LOCK>
class ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK >

Same as ACE_TSS_Singleton, except does _not_ register with ACE_Object_Manager for destruction.

This version of ACE_TSS_Singleton can be used if, for example, its DLL will be unloaded before the ACE_Object_Manager destroys the instance. Unlike with ACE_Singleton, the application is responsible for explicitly destroying the instance after it is no longer needed (if it wants to avoid memory leaks, at least). The close() static member function must be used to explicitly destroy the Singleton.


Constructor & Destructor Documentation

template<class TYPE, class ACE_LOCK>
ACE_INLINE ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK >::ACE_Unmanaged_TSS_Singleton void    [protected]
 

Default constructor.


Member Function Documentation

template<class TYPE, class ACE_LOCK>
void ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK >::close void    [static]
 

Explicitly delete the singleton instance.

template<class TYPE, class ACE_LOCK>
void ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK >::dump void    [static]
 

Dump the state of the object.

Reimplemented from ACE_TSS_Singleton< TYPE, ACE_LOCK >.

template<class TYPE, class ACE_LOCK>
TYPE * ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK >::instance void    [static]
 

Global access point to the singleton.

Reimplemented from ACE_TSS_Singleton< TYPE, ACE_LOCK >.

template<class TYPE, class ACE_LOCK>
ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK > *& ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK >::instance_i void    [static, protected]
 

Get pointer to the Singleton instance.

Reimplemented from ACE_TSS_Singleton< TYPE, ACE_LOCK >.


Member Data Documentation

template<class TYPE, class ACE_LOCK>
ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK > * ACE_Unmanaged_TSS_Singleton< TYPE, ACE_LOCK >::singleton_ = 0 [static, protected]
 

Pointer to the Singleton (ACE_Cleanup) instance.

Reimplemented from ACE_TSS_Singleton< TYPE, ACE_LOCK >.


The documentation for this class was generated from the following files:
Generated on Wed Jan 14 22:49:42 2004 for ACE by doxygen1.2.18