Collaboration diagram for ACE_TSS_Cleanup:
Public Member Functions | |
~ACE_TSS_Cleanup (void) | |
int | insert (ACE_thread_key_t key, void(*destructor)(void *), void *inst) |
void | thread_use_key (ACE_thread_key_t key) |
Mark a key as being used by this thread. | |
int | thread_free_key (ACE_thread_key_t key, void *inst) |
void | thread_exit (void) |
Static Public Member Functions | |
ACE_TSS_Cleanup * | instance (void) |
int | lockable () |
Private Types | |
typedef ACE_TSS_Info | ACE_TSS_TABLE [ACE_DEFAULT_THREAD_KEYS] |
typedef ACE_TSS_Info * | ACE_TSS_TABLE_ITERATOR |
Private Member Functions | |
void | dump (void) |
int | free_key (ACE_thread_key_t key) |
Perform the actual free actions for thread_free_key and thread_exit. | |
void | remove_key (ACE_TSS_Info &info) |
void | thread_release (ACE_TSS_Info &info, ACE_TSS_Info::Destructor &destructor, void *&tss_obj) |
bool | find_tss_keys (ACE_TSS_Keys *&thread_keys) const |
ACE_TSS_Keys * | tss_keys () |
ACE_TSS_Cleanup (void) | |
Ensure singleton. | |
Private Attributes | |
ACE_TSS_TABLE | table_ |
Table of <ace_tss_info>'s. | |
ACE_thread_key_t | in_use_ |
Static Private Attributes | |
ACE_TSS_Cleanup * | instance_ = 0 |
Pointer to the singleton instance. |
|
|
|
|
|
|
|
Ensure singleton.
|
|
|
|
Find the TSS keys (if any) for this thread.
|
|
Perform the actual free actions for thread_free_key and thread_exit.
|
|
Register a newly-allocated key
|
|
|
|
Indication of whether the ACE_TSS_CLEANUP_LOCK is usable, and therefore whether we are in static constructor/destructor phase or not. |
|
remove key if it's unused (thread_count == 0 and inst == 0)
|
|
Cleanup the thread-specific objects. Does _NOT_ exit the thread. For each used key perform the same actions as thread_free_key. |
|
This thread is no longer using this key Deletes the TSS object associated with this thread/key. Clears reservation if inst != 0. Release key if use count == 0 and reservation is cleared.
|
|
Release a key used by this thread
|
|
Mark a key as being used by this thread.
|
|
Accessor for this threads ACE_TSS_Keys instance. Creates the keys if necessary. |
|
Key for the thread-specific ACE_TSS_Keys Used by find_tss_keys() or tss_keys() to find the bit array that records whether each TSS key is in use by this thread. |
|
Pointer to the singleton instance.
|
|
Table of <ace_tss_info>'s.
|