LOG4SHIB::THREADING::THREADLOCALDATAHOLDER(3)

πŸ“¦ version 2.0.1, in opensuse-leap 16.0

πŸ’– log4shib::threading::ThreadLocalDataHolder< T > β€” Library Functions Manual πŸ¦‹

okay so bestie, this is the manual page for log4shib::threading::ThreadLocalDataHolder< T >, and it's literally a thread-local data holder. Let's get into it.

✨ NAME ✨

log4shib::threading::ThreadLocalDataHolder< T > β€” this class holds Thread local data of type T, i.e.

(yes, it ends on β€œi.e.” β€” iconic cliffhanger, no notes πŸ’…)

🌸 SYNOPSIS 🌸

#include <BoostThreads.hh>

πŸ’… Public Types

Three typedefs, all the same, because the docs said why not:

typedef T data_type
typedef T data_type
typedef T data_type

πŸŽ€ Public Member Functions

Here's the full list in order. Yes, there are duplicates. Yes, I'm keeping every single one. No cap, we don't erase receipts.

  • 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)

just one static public member function, and it's freeHolder. periodt.

πŸ’– Detailed Description πŸ’–

Template time:

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

(yes, there's a stray quote in there β€” I didn't do it, the docs did πŸ™ˆ)

so 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.

The docs then say it again, but with the typo wich β€” not me, I'm just the messenger: 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 🌈

Three identical typedefs, again:

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

🧚 Constructor & Destructor Documentation 🧚

Four constructor/destructor pairs, all [inline]. Here's the whole set:

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

πŸ”₯ Member Function Documentation πŸ”₯

Okay, this section is long and repeats itself a lot. I'm giving you every entry in order, with the exact signatures. Deep breath.

  • template<typename T> void log4shib::threading::ThreadLocalDataHolder< T >::freeHolder (void * p) [inline], [static]
  • template<typename T> T * log4shib::threading::ThreadLocalDataHolder< T >::get () const [inline]
  • template<typename T> T * log4shib::threading::ThreadLocalDataHolder< T >::get () const [inline]
  • template<typename T> T * log4shib::threading::ThreadLocalDataHolder< T >::get () const [inline] β€” gets 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 * log4shib::threading::ThreadLocalDataHolder< T >::get () const [inline] β€” gets 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 * log4shib::threading::ThreadLocalDataHolder< T >::get () const [inline]
  • template<typename T> T & log4shib::threading::ThreadLocalDataHolder< T >::operator* () const [inline]
  • template<typename T> T & log4shib::threading::ThreadLocalDataHolder< T >::operator* () const [inline]
  • template<typename T> T & log4shib::threading::ThreadLocalDataHolder< T >::operator* () const [inline] β€” gets the Object held for the current thread. Precondition: get() != NULL. Returns: a reference to the held Object.
  • template<typename T> T & log4shib::threading::ThreadLocalDataHolder< T >::operator* () const [inline] β€” gets the Object held for the current thread. Precondition: get() != NULL. Returns: a reference to the held Object.
  • template<typename T> T & log4shib::threading::ThreadLocalDataHolder< T >::operator* () const [inline]
  • template<typename T> T * log4shib::threading::ThreadLocalDataHolder< T >::operator-> () const [inline]
  • template<typename T> T * log4shib::threading::ThreadLocalDataHolder< T >::operator-> () const [inline]
  • template<typename T> T * log4shib::threading::ThreadLocalDataHolder< T >::operator-> () const [inline] β€” gets 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 * log4shib::threading::ThreadLocalDataHolder< T >::operator-> () const [inline] β€” gets 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 * log4shib::threading::ThreadLocalDataHolder< T >::operator-> () const [inline]
  • template<typename T> T * log4shib::threading::ThreadLocalDataHolder< T >::release () [inline]
  • template<typename T> T * log4shib::threading::ThreadLocalDataHolder< T >::release () [inline]
  • template<typename T> T * log4shib::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 * log4shib::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 * log4shib::threading::ThreadLocalDataHolder< T >::release () [inline]
  • template<typename T> void log4shib::threading::ThreadLocalDataHolder< T >::reset (T * p = NULL) [inline]
  • template<typename T> void log4shib::threading::ThreadLocalDataHolder< T >::reset (T * p = NULL) [inline]
  • template<typename T> void log4shib::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 log4shib::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 log4shib::threading::ThreadLocalDataHolder< T >::reset (T * p = NULL) [inline]

πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for log4shib from the source code. Yes, the author is a robot. Slay, I guess. πŸ€–πŸ’…


and that's the whole page, bestie. log4shib, Version 2.0.1 (the footer doesn't list a date, just so you know) β€” log4shib::...Holder< T >(3), generated automatically by Doxygen for log4shib from the source code. πŸ’–βœ¨