#include "ace/OS_Log_Msg_Attributes.h"
Go to the source code of this file.
Classes | |
class | ACE_OS_Thread_Descriptor |
Parent class of all ACE_Thread_Descriptor classes. = Container for ACE_Thread_Descriptor members that are used in ACE_OS. More... | |
class | ACE_Base_Thread_Adapter |
Base class for all the Thread_Adapters. More... | |
Defines | |
#define | ACE_THREAD_ADAPTER_NAME ace_thread_adapter |
Functions | |
ACE_Export ACE_THR_FUNC_RETURN | ACE_THREAD_ADAPTER_NAME (void *args) |
Definition in file Base_Thread_Adapter.h.
#define ACE_THREAD_ADAPTER_NAME ace_thread_adapter |
Definition at line 33 of file Base_Thread_Adapter.h.
ACE_Export ACE_THR_FUNC_RETURN ACE_THREAD_ADAPTER_NAME | ( | void * | args | ) |
Definition at line 104 of file Base_Thread_Adapter.cpp.
{ ACE_OS_TRACE ("ACE_THREAD_ADAPTER_NAME"); #if defined (ACE_HAS_TSS_EMULATION) // As early as we can in the execution of the new thread, allocate // its local TS storage. Allocate it on the stack, to save dynamic // allocation/dealloction. void *ts_storage[ACE_TSS_Emulation::ACE_TSS_THREAD_KEYS_MAX]; ACE_TSS_Emulation::tss_open (ts_storage); #endif /* ACE_HAS_TSS_EMULATION */ ACE_Base_Thread_Adapter * const thread_args = static_cast<ACE_Base_Thread_Adapter *> (args); #ifdef ACE_USES_GPROF setitimer (ITIMER_PROF, thread_args->timerval (), 0); #endif // ACE_USES_GPROF // Invoke the user-supplied function with the args. ACE_THR_FUNC_RETURN status = thread_args->invoke (); return status; }