ACE  6.1.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | Private Attributes
ACE_Thread_Control Class Reference

Used to keep track of a thread's activities within its entry point function. More...

#include <Thread_Control.h>

Collaboration diagram for ACE_Thread_Control:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ACE_Thread_Control (ACE_Thread_Manager *tm=0, int insert=0)
 ~ACE_Thread_Control (void)
ACE_THR_FUNC_RETURN exit (ACE_THR_FUNC_RETURN status, int do_thr_exit)
int insert (ACE_Thread_Manager *tm, bool insert=false)
ACE_Thread_Managerthr_mgr (void)
 Returns the current Thread_Manager.
ACE_Thread_Managerthr_mgr (ACE_Thread_Manager *)
ACE_THR_FUNC_RETURN status (ACE_THR_FUNC_RETURN status)
 Set the exit status (and return existing status).
ACE_THR_FUNC_RETURN status (void)
 Get the current exit status.
void dump (void) const
 Dump the state of an object.

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Private Attributes

ACE_Thread_Managertm_
 Pointer to the thread manager for this block of code.
ACE_THR_FUNC_RETURN status_
 Keeps track of the exit status for the thread.

Detailed Description

Used to keep track of a thread's activities within its entry point function.

A ACE_Thread_Manager uses this class to ensure that threads it spawns automatically register and unregister themselves with it. This class can be stored in thread-specific storage using the ACE_TSS wrapper. When a thread exits the <ACE_TSS::cleanup> function deletes this object, thereby ensuring that it gets removed from its associated ACE_Thread_Manager.


Constructor & Destructor Documentation

ACE_Thread_Control::ACE_Thread_Control ( ACE_Thread_Manager tm = 0,
int  insert = 0 
)

Initialize the thread control object. If insert != 0, then register the thread with the Thread_Manager.

Remove the thread from its associated Thread_Manager and exit the thread if <do_thr_exit> is enabled.


Member Function Documentation

void ACE_Thread_Control::dump ( void  ) const

Dump the state of an object.

ACE_THR_FUNC_RETURN ACE_Thread_Control::exit ( ACE_THR_FUNC_RETURN  status,
int  do_thr_exit 
)

Remove this thread from its associated ACE_Thread_Manager and exit the thread if do_thr_exit is enabled.

int ACE_Thread_Control::insert ( ACE_Thread_Manager tm,
bool  insert = false 
)

Store the Thread_Manager and use it to register ourselves for correct shutdown.

ACE_THR_FUNC_RETURN ACE_Thread_Control::status ( ACE_THR_FUNC_RETURN  status)
inline

Set the exit status (and return existing status).

ACE_THR_FUNC_RETURN ACE_Thread_Control::status ( void  )
inline

Get the current exit status.

Returns the current Thread_Manager.

Atomically set a new Thread_Manager and return the old Thread_Manager.


Member Data Documentation

Declare the dynamic allocation hooks.

ACE_THR_FUNC_RETURN ACE_Thread_Control::status_
private

Keeps track of the exit status for the thread.

Pointer to the thread manager for this block of code.


The documentation for this class was generated from the following files: