This class holds Thread local data of type T, i.e. More...
#include <BoostThreads.hh>
Classes | |
class | Holder |
Public Types | |
typedef T | data_type |
typedef T | data_type |
typedef T | data_type |
Public Member Functions | |
T * | get () const |
T * | get () const |
T * | get () const |
Obtains the Object held for the current thread. | |
T * | get () const |
Obtains the Object held for the current thread. | |
T * | get () const |
T & | operator* () const |
T & | operator* () const |
T & | operator* () const |
Obtains the Object held for the current thread. | |
T & | operator* () const |
Obtains the Object held for the current thread. | |
T & | operator* () const |
T * | operator-> () const |
T * | operator-> () const |
T * | operator-> () const |
Obtains the Object held for the current thread. | |
T * | operator-> () const |
Obtains the Object held for the current thread. | |
T * | operator-> () const |
T * | release () |
T * | release () |
T * | release () |
Releases the Object held for the current thread. | |
T * | release () |
Releases the Object held for the current thread. | |
T * | release () |
void | reset (T *p=NULL) |
void | reset (T *p=NULL) |
void | reset (T *p=NULL) |
Sets a new Object to be held for the current thread. | |
void | reset (T *p=NULL) |
void | reset (T *p=NULL) |
Sets a new Object to be held for the current thread. | |
ThreadLocalDataHolder () | |
ThreadLocalDataHolder () | |
ThreadLocalDataHolder () | |
ThreadLocalDataHolder () | |
~ThreadLocalDataHolder () | |
~ThreadLocalDataHolder () | |
~ThreadLocalDataHolder () | |
~ThreadLocalDataHolder () | |
Static Public Member Functions | |
static void | freeHolder (void *p) |
Private Attributes | |
T * | _data |
pthread_key_t | _key |
omni_thread::key_t | _key |
DWORD | _key |
boost::thread_specific_ptr< T > | _localData |
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.
Definition at line 32 of file BoostThreads.hh.
typedef T threading::ThreadLocalDataHolder< T >::data_type |
Definition at line 34 of file DummyThreads.hh.
typedef T threading::ThreadLocalDataHolder< T >::data_type |
Definition at line 50 of file OmniThreads.hh.
typedef T threading::ThreadLocalDataHolder< T >::data_type |
Definition at line 115 of file PThreads.hh.
threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder | ( | ) | [inline] |
Definition at line 36 of file DummyThreads.hh.
threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder | ( | ) | [inline] |
Definition at line 37 of file DummyThreads.hh.
threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder | ( | ) | [inline] |
Definition at line 103 of file MSThreads.hh.
threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder | ( | ) | [inline] |
Definition at line 106 of file MSThreads.hh.
threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder | ( | ) | [inline] |
Definition at line 52 of file OmniThreads.hh.
threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder | ( | ) | [inline] |
Definition at line 55 of file OmniThreads.hh.
threading::ThreadLocalDataHolder< T >::ThreadLocalDataHolder | ( | ) | [inline] |
Definition at line 117 of file PThreads.hh.
threading::ThreadLocalDataHolder< T >::~ThreadLocalDataHolder | ( | ) | [inline] |
Definition at line 126 of file PThreads.hh.
static void threading::ThreadLocalDataHolder< T >::freeHolder | ( | void * | p | ) | [inline, static] |
Definition at line 121 of file PThreads.hh.
T* threading::ThreadLocalDataHolder< T >::get | ( | ) | const [inline] |
Definition at line 34 of file BoostThreads.hh.
T* threading::ThreadLocalDataHolder< T >::get | ( | ) | const [inline] |
Definition at line 42 of file DummyThreads.hh.
T* threading::ThreadLocalDataHolder< T >::get | ( | ) | const [inline] |
Obtains the Object held for the current thread.
Definition at line 62 of file OmniThreads.hh.
T* threading::ThreadLocalDataHolder< T >::get | ( | ) | const [inline] |
Obtains the Object held for the current thread.
Definition at line 115 of file MSThreads.hh.
T* threading::ThreadLocalDataHolder< T >::get | ( | ) | const [inline] |
Definition at line 134 of file PThreads.hh.
T& threading::ThreadLocalDataHolder< T >::operator* | ( | void | ) | const [inline] |
Definition at line 39 of file BoostThreads.hh.
T& threading::ThreadLocalDataHolder< T >::operator* | ( | void | ) | const [inline] |
Definition at line 47 of file DummyThreads.hh.
T& threading::ThreadLocalDataHolder< T >::operator* | ( | void | ) | const [inline] |
Obtains the Object held for the current thread.
Definition at line 81 of file OmniThreads.hh.
T& threading::ThreadLocalDataHolder< T >::operator* | ( | void | ) | const [inline] |
Obtains the Object held for the current thread.
Definition at line 132 of file MSThreads.hh.
T& threading::ThreadLocalDataHolder< T >::operator* | ( | void | ) | const [inline] |
Definition at line 139 of file PThreads.hh.
T* threading::ThreadLocalDataHolder< T >::operator-> | ( | void | ) | const [inline] |
Definition at line 38 of file BoostThreads.hh.
T* threading::ThreadLocalDataHolder< T >::operator-> | ( | void | ) | const [inline] |
Definition at line 46 of file DummyThreads.hh.
T* threading::ThreadLocalDataHolder< T >::operator-> | ( | void | ) | const [inline] |
Obtains the Object held for the current thread.
Initially each thread holds NULL.
Definition at line 74 of file OmniThreads.hh.
T* threading::ThreadLocalDataHolder< T >::operator-> | ( | void | ) | const [inline] |
Obtains the Object held for the current thread.
Initially each thread holds NULL.
Definition at line 125 of file MSThreads.hh.
T* threading::ThreadLocalDataHolder< T >::operator-> | ( | void | ) | const [inline] |
Definition at line 138 of file PThreads.hh.
T* threading::ThreadLocalDataHolder< T >::release | ( | ) | [inline] |
Definition at line 41 of file BoostThreads.hh.
T* threading::ThreadLocalDataHolder< T >::release | ( | ) | [inline] |
Definition at line 49 of file DummyThreads.hh.
T* threading::ThreadLocalDataHolder< T >::release | ( | ) | [inline] |
Releases the Object held for the current thread.
Definition at line 89 of file OmniThreads.hh.
T* threading::ThreadLocalDataHolder< T >::release | ( | ) | [inline] |
Releases the Object held for the current thread.
Definition at line 140 of file MSThreads.hh.
T* threading::ThreadLocalDataHolder< T >::release | ( | ) | [inline] |
Definition at line 141 of file PThreads.hh.
void threading::ThreadLocalDataHolder< T >::reset | ( | T * | p = NULL | ) | [inline] |
Definition at line 45 of file BoostThreads.hh.
void threading::ThreadLocalDataHolder< T >::reset | ( | T * | p = NULL | ) | [inline] |
Definition at line 56 of file DummyThreads.hh.
void 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.
p | the new object to hold. |
Definition at line 108 of file OmniThreads.hh.
void threading::ThreadLocalDataHolder< T >::reset | ( | T * | p = NULL | ) | [inline] |
Definition at line 148 of file PThreads.hh.
void 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.
p | the new object to hold. |
Definition at line 152 of file MSThreads.hh.
T* threading::ThreadLocalDataHolder< T >::_data [private] |
Definition at line 60 of file DummyThreads.hh.
pthread_key_t threading::ThreadLocalDataHolder< T >::_key [private] |
Definition at line 112 of file PThreads.hh.
omni_thread::key_t threading::ThreadLocalDataHolder< T >::_key [private] |
Definition at line 134 of file OmniThreads.hh.
DWORD threading::ThreadLocalDataHolder< T >::_key [private] |
Definition at line 156 of file MSThreads.hh.
boost::thread_specific_ptr<T> threading::ThreadLocalDataHolder< T >::_localData [private] |
Definition at line 47 of file BoostThreads.hh.