library of assembled shared sources

http://lass.cocamware.com

lass::util::impl::ThreadLocalStorageInternal Class Reference

Inheritance diagram for lass::util::impl::ThreadLocalStorageInternal:

Inheritance graph
[legend]
Collaboration diagram for lass::util::impl::ThreadLocalStorageInternal:

Collaboration graph
[legend]

Public Types

typedef void(* TDestructor )(void *)

Public Member Functions

 ThreadLocalStorageInternal (void(*destructor)(void *))
 ~ThreadLocalStorageInternal ()
void *const get () const
void set (const void *value)
 ThreadLocalStorageInternal (void(*destructor)(void *))
 ~ThreadLocalStorageInternal ()
void *const get () const
void set (void *value)

Static Public Member Functions

static void destructLocals ()
 destruct the local copies of the variables in a thread.

Private Types

typedef std::map< DWORD,
TDestructor
TDestructors

Private Member Functions

void freeSlot (DWORD index)
void swap (NonCopyable &)

Static Private Member Functions

static TDestructorsdestructors ()

Private Attributes

pthread_key_t key_
DWORD index_

Detailed Description

Definition at line 477 of file thread_posix.inl.


Member Typedef Documentation

Definition at line 408 of file thread_win32.inl.


Constructor & Destructor Documentation

lass::util::impl::ThreadLocalStorageInternal::ThreadLocalStorageInternal ( void(*)(void *)  destructor  )  [inline]

Definition at line 480 of file thread_posix.inl.

References key_, and LASS_ENFORCE_CLIB_RC.

lass::util::impl::ThreadLocalStorageInternal::~ThreadLocalStorageInternal (  )  [inline]

Definition at line 484 of file thread_posix.inl.

References key_, and LASS_WARN_CLIB_RC.

lass::util::impl::ThreadLocalStorageInternal::ThreadLocalStorageInternal ( void(*)(void *)  destructor  )  [inline]

Definition at line 331 of file thread_win32.inl.

References destructors(), freeSlot(), index_, and LASS_THROW.

lass::util::impl::ThreadLocalStorageInternal::~ThreadLocalStorageInternal (  )  [inline]

Definition at line 358 of file thread_win32.inl.

References destructors(), freeSlot(), and index_.


Member Function Documentation

void* const lass::util::impl::ThreadLocalStorageInternal::get (  )  const [inline]

Definition at line 488 of file thread_posix.inl.

References key_.

Referenced by lass::util::ThreadLocalStorage::get().

void lass::util::impl::ThreadLocalStorageInternal::set ( const void *  value  )  [inline]

Definition at line 492 of file thread_posix.inl.

References key_, and LASS_ENFORCE_CLIB_RC.

Referenced by lass::util::ThreadLocalStorage::set().

void* const lass::util::impl::ThreadLocalStorageInternal::get (  )  const [inline]

Definition at line 366 of file thread_win32.inl.

References index_.

void lass::util::impl::ThreadLocalStorageInternal::set ( void *  value  )  [inline]

Definition at line 378 of file thread_win32.inl.

References index_.

static void lass::util::impl::ThreadLocalStorageInternal::destructLocals (  )  [inline, static]

destruct the local copies of the variables in a thread.

to be called at end of thread's life time ...

Definition at line 386 of file thread_win32.inl.

References destructors().

Referenced by lass::util::impl::ThreadInternal::onThreadDetach(), and lass::util::impl::MainLocalStorageDestroyer::~MainLocalStorageDestroyer().

void lass::util::impl::ThreadLocalStorageInternal::freeSlot ( DWORD  index  )  [inline, private]

Definition at line 410 of file thread_win32.inl.

References lass::io::cerr().

Referenced by ThreadLocalStorageInternal(), and ~ThreadLocalStorageInternal().

static TDestructors* lass::util::impl::ThreadLocalStorageInternal::destructors (  )  [inline, static, private]

void lass::util::NonCopyable::swap ( NonCopyable  )  [inline, protected, inherited]

Definition at line 60 of file non_copyable.h.

Referenced by lass::io::Image::readLine().


Field Documentation


The documentation for this class was generated from the following files:

Generated on Mon Nov 10 14:22:20 2008 for Library of Assembled Shared Sources by doxygen 1.5.7.1
SourceForge.net Logo