NAME
ACE_Thread_Descriptor_Base - Basic information for thread descriptors. These information gets extracted out because we need it after a thread is terminated.
SYNOPSIS
#include <ace/Thread_Manager.h>
class ACE_Thread_Descriptor_Base : public ACE_OS_Thread_Descriptor
{
public:
friend class ACE_Thread_Manager;
friend class ACE_Double_Linked_List<ACE_Thread_Descriptor_Base>;
friend class ACE_Double_Linked_List_Iterator_Base<ACE_Thread_Descriptor_Base>;
friend class ACE_Double_Linked_List_Iterator<ACE_Thread_Descriptor_Base>;
friend class ACE_Double_Linked_List<ACE_Thread_Descriptor>;
friend class ACE_Double_Linked_List_Iterator_Base<ACE_Thread_Descriptor>;
friend class ACE_Double_Linked_List_Iterator<ACE_Thread_Descriptor>;
ACE_Thread_Descriptor_Base (void);
~ACE_Thread_Descriptor_Base (void);
int operator== (const ACE_Thread_Descriptor_Base &rhs) const;
int operator!= (const ACE_Thread_Descriptor_Base &rhs) const;
int grp_id (void);
ACE_UINT32 state (void);
ACE_Task_Base *task (void);
protected:
ACE_thread_t thr_id_;
ACE_hthread_t thr_handle_;
int grp_id_;
ACE_UINT32 thr_state_;
ACE_Task_Base *task_;
ACE_Thread_Descriptor_Base *next_;
ACE_Thread_Descriptor_Base *prev_;
};
We need the following operators to make Borland happy.
int operator== (const ACE_Thread_Descriptor_Base &rhs) const;
Equality operator.
int operator!= (const ACE_Thread_Descriptor_Base &rhs) const;
Inequality operator.
int grp_id (void);
Group ID.
ACE_UINT32 state (void);
Current state of the thread.
ACE_Task_Base *task (void);
Return the pointer to an ACE_Task_Base or NULL if there's no ACE_Task_Base associated with this thread.;
AUTHOR
Doug Schmidt
LIBRARY
ace