---
name: "ACE_Thread_Descriptor_Base"
section: "3"
platform: "linux"
package: "libace-doc"
version: "5.0.7-4"
release: "Debian 2.2 (Potato)"
platforms: ["linux"]
url: "https://new.carta.tech/ACE_Thread_Descriptor_Base"
---

# ACE\_Thread\_Descriptor\_Base(3)

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

## 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
