## NAME

ACE_At_Thread_Exit - Contains a method to be applied when a thread is terminated.

## SYNOPSIS

    #include <ace/Thread_Manager.h>

    class ACE_At_Thread_Exit
    {
      public:
        friend class ACE_Thread_Descriptor;
        friend class ACE_Thread_Manager;
        ACE_At_Thread_Exit(void);
        virtual ~ACE_At_Thread_Exit(void);
        int is_owner() const;
        int is_owner(int owner);
        int was_applied() const;
        int was_applied(int applied);
      protected:
        ACE_At_Thread_Exit* next_;
        void do_apply();
        virtual void apply() = 0;
        ACE_Thread_Descriptor* td_;
        int was_applied_;
        int is_owner_;
    };

## PUBLIC MEMBERS

    friend class ACE_Thread_Descriptor;

    friend class ACE_Thread_Manager;

    ACE_At_Thread_Exit(void);

    virtual ~ACE_At_Thread_Exit(void);

    int is_owner() const;

    int is_owner(int owner);

    int was_applied() const;

    int was_applied(int applied);

## PROTECTED MEMBERS

    ACE_At_Thread_Exit* next_;

The next At_Thread_Exit hook in the list.

    void do_apply();

    virtual void apply() = 0;

The apply method.

    ACE_Thread_Descriptor* td_;

The Thread_Descriptor where this at is registered.

    int was_applied_;

The at was applied?

    int is_owner_;

The at has the ownership of this?

## AUTHOR

Doug Schmidt

## LIBRARY

ace