All thread-local variables declared by TLS_STRUCT are actually just a bunch of bytes... until init() and fini() are called, that is. After that the tls_blob acts like a smart pointer.
Definition at line 140 of file tls.h.
Public Types | |
enum | |
Public Member Functions | |
void | init () |
void | fini () |
T * | get () |
Used by fini() and init() and directly by macros. | |
Public Attributes | |
long | _reserved_space [ARRAY_SIZE] |
void tls_tricks::tls_blob< T >::init | ( | ) | [inline] |
Placement new, using _reserved_space, to make the type T's constructor get called.
Definition at line 150 of file tls.h.
References tls_tricks::tls_blob< T >::get().
Here is the call graph for this function:
void tls_tricks::tls_blob< T >::fini | ( | ) | [inline] |
Call T's destructor
Definition at line 153 of file tls.h.
References tls_tricks::tls_blob< T >::get().
Here is the call graph for this function: