log4cpp::threading::ThreadLocalDataHolder

This class holds Thread local data of type T, i.e.

Synopsis

#include <BoostThreads.hh>

Public Types

typedef T data_type
typedef T data_type
typedef T data_type

Public Member Functions

T * get () const
T * operator-> () const
T & operator* () const
T * release ()
void reset (T *p=NULL)
ThreadLocalDataHolder ()
~ThreadLocalDataHolder ()
T * get () const
T * operator-> () const
T & operator* () const
T * release ()
void reset (T *p=NULL)
ThreadLocalDataHolder ()
~ThreadLocalDataHolder ()
T * get () const
Obtains the Object held for the current thread.
T * operator-> () const
Obtains the Object held for the current thread.
T & operator* () const
Obtains the Object held for the current thread.
T * release ()
Releases the Object held for the current thread.
void reset (T *p=NULL)
Sets a new Object to be held for the current thread.
ThreadLocalDataHolder ()
~ThreadLocalDataHolder ()
T * get () const
Obtains the Object held for the current thread.
T * operator-> () const
Obtains the Object held for the current thread.
T & operator* () const
Obtains the Object held for the current thread.
T * release ()
Releases the Object held for the current thread.
void reset (T *p=NULL)
Sets a new Object to be held for the current thread.
ThreadLocalDataHolder ()
~ThreadLocalDataHolder ()
T * get () const
T * operator-> () const
T & operator* () const
T * release ()
void reset (T *p=NULL)

Static Public Member Functions

static void freeHolder (void *p)

Detailed Description

template<typename T>

class log4cpp::threading::ThreadLocalDataHolder< T >"This class holds Thread local data of type T, i.e.

for each thread a ThreadLocalDataHolder holds 0 or 1 instance of T. The held object must be heap allocated and will be deleted upon termination of the thread to which it belongs.

for each thread a ThreadLocalDataHolder holds 0 or 1 instance of T. The held object must be heap allocated and will be deleted upon termination of the thread to wich it belongs. This is an omni_threads based equivalent of Boost.Threads thread_specific_ptr<T> class.

Member Typedef Documentation

template<typename T > typedef T log4cpp::threading::ThreadLocalDataHolder< T >::data_type

template<typename T > typedef T log4cpp::threading::ThreadLocalDataHolder< T >::data_type

template<typename T > typedef T log4cpp::threading::ThreadLocalDataHolder< T >::data_type

Constructor & Destructor Documentation

template<typename T > log4cpp::threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder () [inline]

template<typename T > log4cpp::threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder () [inline]

template<typename T > log4cpp::threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder () [inline]

template<typename T > log4cpp::threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder () [inline]

template<typename T > log4cpp::threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder () [inline]

template<typename T > log4cpp::threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder () [inline]

template<typename T > log4cpp::threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder () [inline]

template<typename T > log4cpp::threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder () [inline]

Member Function Documentation

template<typename T > static void log4cpp::threading::ThreadLocalDataHolder< T >::freeHolder (void * p) [inline], [static]

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::get () const [inline]

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::get () const [inline]

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::get () const [inline]

Obtains the Object held for the current thread.

Returns

a pointer to the held Object or NULL if no Object has been set for the current thread.

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::get () const [inline]

Obtains the Object held for the current thread.

Returns

a pointer to the held Object or NULL if no Object has been set for the current thread.

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::get () const [inline]

template<typename T > T & log4cpp::threading::ThreadLocalDataHolder< T >::operator* () const [inline]

template<typename T > T & log4cpp::threading::ThreadLocalDataHolder< T >::operator* () const [inline]

template<typename T > T & log4cpp::threading::ThreadLocalDataHolder< T >::operator* () const [inline]

Obtains the Object held for the current thread.

Precondition

get() != NULL

Returns

a reference to the held Object.

template<typename T > T & log4cpp::threading::ThreadLocalDataHolder< T >::operator* () const [inline]

Obtains the Object held for the current thread.

Precondition

get() != NULL

Returns

a reference to the held Object.

template<typename T > T & log4cpp::threading::ThreadLocalDataHolder< T >::operator* () const [inline]

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::operator-> () const [inline]

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::operator-> () const [inline]

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::operator-> () const [inline]

Obtains the Object held for the current thread. Initially each thread holds NULL.

Returns

a pointer to the held Object or NULL if no Object has been set for the current thread.

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::operator-> () const [inline]

Obtains the Object held for the current thread. Initially each thread holds NULL.

Returns

a pointer to the held Object or NULL if no Object has been set for the current thread.

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::operator-> () const [inline]

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::release () [inline]

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::release () [inline]

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::release () [inline]

Releases the Object held for the current thread.

Postcondition

get() == NULL

Returns

a pointer to the Object thas was held for the current thread or NULL if no Object was held.

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::release () [inline]

Releases the Object held for the current thread.

Postcondition

get() == NULL

Returns

a pointer to the Object thas was held for the current thread or NULL if no Object was held.

template<typename T > T * log4cpp::threading::ThreadLocalDataHolder< T >::release () [inline]

template<typename T > void log4cpp::threading::ThreadLocalDataHolder< T >::reset (T * p = NULL) [inline]

template<typename T > void log4cpp::threading::ThreadLocalDataHolder< T >::reset (T * p = NULL) [inline]

template<typename T > void log4cpp::threading::ThreadLocalDataHolder< T >::reset (T * p = NULL) [inline]

Sets a new Object to be held for the current thread. A previously set Object will be deleted.

Parameters

p the new object to hold.

Postcondition

get() == p

template<typename T > void log4cpp::threading::ThreadLocalDataHolder< T >::reset (T * p = NULL) [inline]

Sets a new Object to be held for the current thread. A previously set Object will be deleted.

Parameters

p the new object to hold.

Postcondition

get() == p

template<typename T > void log4cpp::threading::ThreadLocalDataHolder< T >::reset (T * p = NULL) [inline]

Author

Generated automatically by Doxygen for log4cpp from the source code.

Info

Version 1.1.3 log4cpp