Collaboration diagram for ACE_TSS_Cleanup:
Public Methods | |
~ACE_TSS_Cleanup (void) | |
void | exit (void *status) |
Cleanup the thread-specific objects. Does _NOT_ exit the thread. | |
int | insert (ACE_thread_key_t key, void(*destructor)(void *), void *inst) |
Insert a <key, destructor> tuple into the table. | |
int | remove (ACE_thread_key_t key) |
Remove a <key, destructor> tuple from the table. | |
int | detach (void *inst) |
Detaches a tss_instance from its key. | |
void | key_used (ACE_thread_key_t key) |
Mark a key as being used by this thread. | |
int | free_all_keys_left (void) |
Free all keys left in the table before destruction. | |
Static Public Methods | |
ACE_TSS_Cleanup * | instance (void) |
int | lockable () |
Protected Methods | |
void | dump (void) |
ACE_TSS_Cleanup (void) | |
Ensure singleton. | |
Private Types | |
typedef ACE_TSS_Info | ACE_TSS_TABLE [ACE_DEFAULT_THREAD_KEYS] |
typedef ACE_TSS_Info * | ACE_TSS_TABLE_ITERATOR |
Private Methods | |
ACE_TSS_Keys * | tss_keys () |
Accessor for this threads ACE_TSS_Keys instance. | |
Private Attributes | |
ACE_TSS_TABLE | table_ |
Table of <ACE_TSS_Info>'s. | |
ACE_thread_key_t | in_use_ |
Key for the thread-specific array of whether each TSS key is in use. | |
Static Private Attributes | |
ACE_TSS_Cleanup * | instance_ = 0 |
Pointer to the singleton instance. |
All this nonsense is required since Win32 doesn't automatically cleanup thread-specific storage on thread exit, unlike real operating systems... ;-)
|
|
|
|
|
|
|
Ensure singleton.
|
|
Detaches a tss_instance from its key.
|
|
|
|
Cleanup the thread-specific objects. Does _NOT_ exit the thread.
|
|
Free all keys left in the table before destruction.
|
|
Insert a <key, destructor> tuple into the table.
|
|
|
|
Mark a key as being used by this thread.
|
|
Indication of whether the ACE_TSS_CLEANUP_LOCK is usable, and therefore whether we are in static constructor/destructor phase or not. |
|
Remove a <key, destructor> tuple from the table.
|
|
Accessor for this threads ACE_TSS_Keys instance.
|
|
Key for the thread-specific array of whether each TSS key is in use.
|
|
Pointer to the singleton instance.
|
|
Table of <ACE_TSS_Info>'s.
|