ACE 6.0.4
Public Member Functions | Protected Member Functions
ACE_OS_Thread_Adapter Class Reference

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 <OS_Thread_Adapter.h>

Inheritance diagram for ACE_OS_Thread_Adapter:
Inheritance graph
[legend]
Collaboration diagram for ACE_OS_Thread_Adapter:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ACE_OS_Thread_Adapter (ACE_THR_FUNC user_func, void *arg, ACE_THR_C_FUNC entry_point=(ACE_THR_C_FUNC) ACE_THREAD_ADAPTER_NAME, long cancel_flags=0)
 Constructor.
virtual ACE_THR_FUNC_RETURN invoke (void)

Protected Member Functions

 ~ACE_OS_Thread_Adapter (void)
 Ensure that this object is allocated on the heap.

Detailed Description

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 Documentation

ACE_OS_Thread_Adapter::ACE_OS_Thread_Adapter ( ACE_THR_FUNC  user_func,
void *  arg,
ACE_THR_C_FUNC  entry_point = (ACE_THR_C_FUNC) ACE_THREAD_ADAPTER_NAME,
long  cancel_flags = 0 
)

Constructor.

ACE_OS_Thread_Adapter::~ACE_OS_Thread_Adapter ( void  ) [protected]

Ensure that this object is allocated on the heap.


Member Function Documentation

ACE_THR_FUNC_RETURN ACE_OS_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.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines