|
ACE 6.0.3
|
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. More...
#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, long cancel_flags=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. | |
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.
| 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, |
||
| long | cancel_flags = 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_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 | ( | void | ) | [inline] |
Accessor for the optional ACE_Thread_Manager.
ACE_Thread_Manager* ACE_Thread_Adapter::thr_mgr_ [private] |
Optional thread manager.
1.7.4