#include <Base_Thread_Adapter.h>
Inheritance diagram for ACE_Base_Thread_Adapter:
Public Methods | |
ACE_Base_Thread_Adapter (ACE_THR_FUNC user_func, void *arg, ACE_THR_C_FUNC entry_point=(ACE_THR_C_FUNC) ace_thread_adapter, ACE_OS_Thread_Descriptor *td=0) | |
Constructor. More... | |
virtual ACE_THR_FUNC_RETURN | invoke (void)=0 |
Virtual method invoked by the thread entry point. More... | |
ACE_THR_C_FUNC | entry_point (void) |
Accessor for the C entry point function to the OS thread creation routine. More... | |
Static Public Methods | |
void | close_log_msg (void) |
Invoke the close_log_msg_hook, if it is present. More... | |
void | sync_log_msg (const ACE_TCHAR *prog_name) |
Invoke the sync_log_msg_hook, if it is present. More... | |
ACE_OS_Thread_Descriptor * | thr_desc_log_msg (void) |
Invoke the thr_desc_log_msg_hook, if it is present. More... | |
Protected Methods | |
virtual | ~ACE_Base_Thread_Adapter (void) |
Destructor, making it private ensures that objects of this class are allocated on the heap. More... | |
void | inherit_log_msg (void) |
Inherit the logging features if the parent thread has an <ACE_Log_Msg>. More... | |
Protected Attributes | |
ACE_THR_FUNC | user_func_ |
Thread startup function passed in by the user (C++ linkage). More... | |
void * | arg_ |
Argument to thread startup function. More... | |
ACE_THR_C_FUNC | entry_point_ |
Entry point to the underlying OS thread creation call (C linkage). More... | |
ACE_OS_Thread_Descriptor * | thr_desc_ |
Optional thread descriptor. More... | |
ACE_OS_Log_Msg_Attributes | log_msg_attributes_ |
The ACE_Log_Msg attributes. More... | |
Static Private Methods | |
void | set_log_msg_hooks (ACE_INIT_LOG_MSG_HOOK init_hook, ACE_INHERIT_LOG_MSG_HOOK inherit_hook, ACE_CLOSE_LOG_MSG_HOOK close_hook, ACE_SYNC_LOG_MSG_HOOK sync_hook, ACE_THR_DESC_LOG_MSG_HOOK thr_desc) |
Set the Log_Msg hooks. More... | |
Static Private Attributes | |
ACE_INIT_LOG_MSG_HOOK | init_log_msg_hook_ = 0 |
The hooks to inherit and cleanup the Log_Msg attributes. More... | |
ACE_INHERIT_LOG_MSG_HOOK | inherit_log_msg_hook_ = 0 |
ACE_CLOSE_LOG_MSG_HOOK | close_log_msg_hook_ = 0 |
ACE_SYNC_LOG_MSG_HOOK | sync_log_msg_hook_ = 0 |
ACE_THR_DESC_LOG_MSG_HOOK | thr_desc_log_msg_hook_ = 0 |
Friends | |
class | ACE_Log_Msg |
Allow the ACE_Log_Msg class to set its hooks. More... | |
class | ACE_Thread_Adapter_Has_Private_Destructor |
Friend declaration to avoid compiler warning: only defines a private destructor and has no friends. More... |
Converts a C++ function into a function that can be called from a thread creation routine (e.g., pthread_create() or _beginthreadex()) that expects an extern "C" entry point. This class also makes it possible to transparently provide hooks to register a thread with an ACE_Thread_Manager. This class is used in ACE_OS::thr_create(). In general, the thread that creates an object of this class is different from the thread that calls invoke()
on this object. Therefore, the invoke()
method is responsible for deleting itself.
|
Constructor.
|
|
Destructor, making it private ensures that objects of this class are allocated on the heap.
|
|
Invoke the close_log_msg_hook, if it is present.
|
|
Accessor for the C entry point function to the OS thread creation routine.
|
|
Inherit the logging features if the parent thread has an <ACE_Log_Msg>.
|
|
Virtual method invoked by the thread entry point.
Reimplemented in ACE_OS_Thread_Adapter, and ACE_Thread_Adapter. |
|
Set the Log_Msg hooks.
|
|
Invoke the sync_log_msg_hook, if it is present.
|
|
Invoke the thr_desc_log_msg_hook, if it is present.
|
|
Allow the ACE_Log_Msg class to set its hooks.
|
|
Friend declaration to avoid compiler warning: only defines a private destructor and has no friends.
Reimplemented in ACE_OS_Thread_Adapter, and ACE_Thread_Adapter. |
|
Argument to thread startup function.
|
|
|
|
Entry point to the underlying OS thread creation call (C linkage).
|
|
|
|
The hooks to inherit and cleanup the Log_Msg attributes.
|
|
The ACE_Log_Msg attributes.
|
|
|
|
Optional thread descriptor. Passing this pointer in will force the spawned thread to cache this location in <Log_Msg> and wait until <Thread_Manager> fills in all information in thread descriptor. |
|
|
|
Thread startup function passed in by the user (C++ linkage).
|