#include <Thread_Adapter.h>
Public Member Functions | |
ACE_Thread_Adapter (ACE_THR_FUNC user_func, void *arg, ACE_THR_C_FUNC entry_point=(ACE_THR_C_FUNC) ACE_THREAD_ADAPTER_NAME, ACE_Thread_Manager *thr_mgr=0, ACE_Thread_Descriptor *td=0) | |
Constructor. | |
virtual ACE_THR_FUNC_RETURN | invoke (void) |
ACE_Thread_Manager * | thr_mgr (void) |
Accessor for the optional ACE_Thread_Manager. | |
Protected Member Functions | |
~ACE_Thread_Adapter (void) | |
Ensure that this object must be allocated on the heap. | |
Private Member Functions | |
virtual ACE_THR_FUNC_RETURN | invoke_i (void) |
Private Attributes | |
ACE_Thread_Manager * | thr_mgr_ |
Optional 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.
ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_Thread_Adapter::ACE_Thread_Adapter | ( | ACE_THR_FUNC | user_func, | |
void * | arg, | |||
ACE_THR_C_FUNC | entry_point = (ACE_THR_C_FUNC) ACE_THREAD_ADAPTER_NAME , |
|||
ACE_Thread_Manager * | thr_mgr = 0 , |
|||
ACE_Thread_Descriptor * | td = 0 | |||
) |
Constructor.
ACE_Thread_Adapter::~ACE_Thread_Adapter | ( | void | ) | [protected] |
Ensure that this object must be allocated on the heap.
ACE_THR_FUNC_RETURN ACE_Thread_Adapter::invoke | ( | void | ) | [virtual] |
Execute the <user_func_> with the <arg>. This function deletes this
, thereby rendering the object useless after the call returns.
Implements ACE_Base_Thread_Adapter.
ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE ACE_Thread_Manager * ACE_Thread_Adapter::thr_mgr | ( | void | ) |
Accessor for the optional ACE_Thread_Manager.
ACE_THR_FUNC_RETURN ACE_Thread_Adapter::invoke_i | ( | void | ) | [private, virtual] |
Called by invoke, mainly here to separate the SEH stuff because SEH on Win32 doesn't compile with local vars with destructors.
ACE_Thread_Manager* ACE_Thread_Adapter::thr_mgr_ [private] |
Optional thread manager.