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

ACE_Unmanaged_Singleton Class Template Reference

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

#include <Singleton.h>

Inheritance diagram for ACE_Unmanaged_Singleton

Inheritance graph
[legend]
Collaboration diagram for ACE_Unmanaged_Singleton:

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_Singleton (void)
 Default constructor.


Static Protected Methods

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


Static Protected Attributes

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


Detailed Description

template<class TYPE, class ACE_LOCK> template class ACE_Unmanaged_Singleton

Same as , except does _not_ register with for destruction.

This version of can be used if, for example, its DLL will be unloaded before the destroys the instance. Unlike with , 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. Usage is the same as for ACE_Singleton, but note that if you you declare a friend, the friend class must still be an *ACE_Singleton*<T, [ACE_LOCK]>, not an ACE_Unmanaged_Singleton.


Constructor & Destructor Documentation

template<classTYPE, classACE_LOCK>
ACE_INLINE ACE_Unmanaged_Singleton< TYPE,ACE_LOCK >::ACE_Unmanaged_Singleton<TYPE, ACE_LOCK> ( void ) [protected]
 

Default constructor.


Member Function Documentation

template<classTYPE, classACE_LOCK>
void ACE_Unmanaged_Singleton<TYPE, ACE_LOCK>::close ( void ) [static]
 

Explicitly delete the Singleton instance.

template<classTYPE, classACE_LOCK>
void ACE_Unmanaged_Singleton<TYPE, ACE_LOCK>::dump ( void ) [static]
 

Dump the state of the object.

Reimplemented from ACE_Singleton.

template<classTYPE, classACE_LOCK>
TYPE * ACE_Unmanaged_Singleton<TYPE, ACE_LOCK>::instance ( void ) [static]
 

Global access point to the Singleton.

Reimplemented from ACE_Singleton.

template<classTYPE, classACE_LOCK>
ACE_Unmanaged_Singleton< TYPE,ACE_LOCK >*& ACE_Unmanaged_Singleton<TYPE, ACE_LOCK>::instance_i ( void ) [static, protected]
 

Get pointer to the Singleton instance.

Reimplemented from ACE_Singleton.


Member Data Documentation

template<classTYPE, classACE_LOCK>
ACE_Unmanaged_Singleton< TYPE,ACE_LOCK >* ACE_Unmanaged_Singleton<TYPE, ACE_LOCK>::singleton_ = 0 [static, protected]
 

Pointer to the Singleton (ACE_Cleanup) instance.

Reimplemented from ACE_Singleton.


The documentation for this class was generated from the following files:
Generated at Wed Nov 21 10:34:40 2001 for ACE by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000