Public Member Functions | Protected Member Functions | Protected Attributes | Friends

ACE_Thread_Descriptor_Base Class Reference

Basic information for thread descriptors. These information gets extracted out because we need it after a thread is terminated. More...

#include <Thread_Manager.h>

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

List of all members.

Public Member Functions

 ACE_Thread_Descriptor_Base (void)
 ~ACE_Thread_Descriptor_Base (void)
bool operator== (const ACE_Thread_Descriptor_Base &rhs) const
 Equality operator.
bool operator!= (const ACE_Thread_Descriptor_Base &rhs) const
 Inequality operator.
int grp_id (void) const
 Group ID.
ACE_UINT32 state (void) const
 Current state of the thread.
ACE_Task_Basetask (void) const

Protected Member Functions

void reset (void)
 Reset this base thread descriptor.

Protected Attributes

ACE_thread_t thr_id_
 Unique thread ID.
ACE_hthread_t thr_handle_
 Unique handle to thread (used by Win32 and AIX).
int grp_id_
 Group ID.
ACE_UINT32 thr_state_
 Current state of the thread.
ACE_Task_Basetask_
ACE_Thread_Descriptor_Basenext_
ACE_Thread_Descriptor_Baseprev_

Friends

class ACE_Thread_Manager
class ACE_Double_Linked_List< ACE_Thread_Descriptor_Base >
class ACE_Double_Linked_List_Iterator_Base< ACE_Thread_Descriptor_Base >
class ACE_Double_Linked_List_Iterator< ACE_Thread_Descriptor_Base >
class ACE_Double_Linked_List< ACE_Thread_Descriptor >
class ACE_Double_Linked_List_Iterator_Base< ACE_Thread_Descriptor >
class ACE_Double_Linked_List_Iterator< ACE_Thread_Descriptor >

Detailed Description

Basic information for thread descriptors. These information gets extracted out because we need it after a thread is terminated.

For internal use only.

Definition at line 165 of file Thread_Manager.h.


Constructor & Destructor Documentation

ACE_Thread_Descriptor_Base::ACE_Thread_Descriptor_Base ( void   ) 
ACE_Thread_Descriptor_Base::~ACE_Thread_Descriptor_Base ( void   ) 

Definition at line 75 of file Thread_Manager.inl.

{
}


Member Function Documentation

int ACE_Thread_Descriptor_Base::grp_id ( void   )  const

Group ID.

Definition at line 104 of file Thread_Manager.inl.

{
  ACE_TRACE ("ACE_Thread_Descriptor_Base::grp_id");
  return grp_id_;
}

bool ACE_Thread_Descriptor_Base::operator!= ( const ACE_Thread_Descriptor_Base rhs  )  const

Inequality operator.

Definition at line 89 of file Thread_Manager.inl.

{
  return !(*this == rhs);
}

bool ACE_Thread_Descriptor_Base::operator== ( const ACE_Thread_Descriptor_Base rhs  )  const

Equality operator.

Definition at line 80 of file Thread_Manager.inl.

{
  return
    ACE_OS::thr_cmp (this->thr_handle_, rhs.thr_handle_)
    && ACE_OS::thr_equal (this->thr_id_, rhs.thr_id_);
}

void ACE_Thread_Descriptor_Base::reset ( void   )  [protected]

Reset this base thread descriptor.

Definition at line 120 of file Thread_Manager.inl.

{
  ACE_TRACE ("ACE_Thread_Descriptor_Base::reset");
  this->thr_id_ = ACE_OS::NULL_thread;
  this->thr_handle_ = ACE_OS::NULL_hthread;
  this->grp_id_ = 0;
  this->thr_state_ = ACE_Thread_Manager::ACE_THR_IDLE;
  this->task_ = 0;
  this->flags_ = 0;
}

ACE_UINT32 ACE_Thread_Descriptor_Base::state ( void   )  const

Current state of the thread.

Definition at line 112 of file Thread_Manager.inl.

{
  ACE_TRACE ("ACE_Thread_Descriptor_Base::state");
  return thr_state_;
}

ACE_Task_Base * ACE_Thread_Descriptor_Base::task ( void   )  const

Return the pointer to an ACE_Task_Base or NULL if there's no ACE_Task_Base associated with this thread.;

Definition at line 95 of file Thread_Manager.inl.

{
  ACE_TRACE ("ACE_Thread_Descriptor_Base::task");
  return this->task_;
}


Friends And Related Function Documentation

Reimplemented in ACE_Thread_Descriptor.

Definition at line 172 of file Thread_Manager.h.

Definition at line 169 of file Thread_Manager.h.

Reimplemented in ACE_Thread_Descriptor.

Definition at line 174 of file Thread_Manager.h.

Definition at line 171 of file Thread_Manager.h.

Definition at line 173 of file Thread_Manager.h.

Definition at line 170 of file Thread_Manager.h.

friend class ACE_Thread_Manager [friend]

Reimplemented in ACE_Thread_Descriptor.

Definition at line 168 of file Thread_Manager.h.


Member Data Documentation

Group ID.

Definition at line 208 of file Thread_Manager.h.

We need these pointers to maintain the double-linked list in a thread managers.

Definition at line 219 of file Thread_Manager.h.

Definition at line 220 of file Thread_Manager.h.

Pointer to an ACE_Task_Base or NULL if there's no ACE_Task_Base.

Definition at line 215 of file Thread_Manager.h.

Unique handle to thread (used by Win32 and AIX).

Definition at line 205 of file Thread_Manager.h.

Unique thread ID.

Definition at line 202 of file Thread_Manager.h.

Current state of the thread.

Definition at line 211 of file Thread_Manager.h.


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