summaryrefslogtreecommitdiff
path: root/ace/Thread_Exit.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/Thread_Exit.h')
-rw-r--r--ace/Thread_Exit.h78
1 files changed, 0 insertions, 78 deletions
diff --git a/ace/Thread_Exit.h b/ace/Thread_Exit.h
deleted file mode 100644
index 1df6538dc9e..00000000000
--- a/ace/Thread_Exit.h
+++ /dev/null
@@ -1,78 +0,0 @@
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// ace
-//
-// = FILENAME
-// Thread_Exit.h
-//
-// = AUTHOR
-// Carlos O'Ryan <coryan@uci.edu>
-//
-// ============================================================================
-
-#ifndef ACE_THREAD_EXIT_H
-#define ACE_THREAD_EXIT_H
-#include "ace/pre.h"
-
-#include "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS.h"
-#include "ace/Thread_Control.h"
-
-class ACE_Export ACE_Thread_Exit
-{
- // = TITLE
- // Keep exit information for a Thread in thread specific storage.
- // so that the thread-specific exit hooks will get called no
- // matter how the thread exits (e.g., via <ACE_Thread::exit>, C++
- // or Win32 exception, "falling off the end" of the thread entry
- // point function, etc.).
- //
- // = DESCRIPTION
- // This clever little helper class is stored in thread-specific
- // storage using the <ACE_TSS> wrapper. When a thread exits the
- // <ACE_TSS::cleanup> function deletes this object, thereby
- // closing it down gracefully.
-public:
- ACE_Thread_Exit (void);
- // Capture the Thread that will be cleaned up automatically.
-
- void thr_mgr (ACE_Thread_Manager *tm);
- // Set the <ACE_Thread_Manager>.
-
- ~ACE_Thread_Exit (void);
- // Destructor calls the thread-specific exit hooks when a thread
- // exits.
-
- static ACE_Thread_Exit *instance (void);
- // Singleton access point.
-
- static void cleanup (void *instance, void *);
- // Cleanup method, used by the <ACE_Object_Manager> to destroy the
- // singleton.
-
-private:
- friend class ACE_OS_Object_Manager;
- // Allow OS_Object_Manager to reset the status of <is_constructed_>.
-
- ACE_Thread_Control thread_control_;
- // Automatically add/remove the thread from the
- // <ACE_Thread_Manager>.
-
- static u_int is_constructed_;
- // Used to detect whether we should create a new instance (or not)
- // within the instance method -- we don't trust the instance_ ptr
- // because the destructor may have run (if ACE::fini() was called).
- // See bug #526.
- // We don't follow the singleton pattern due to dependency issues.
-};
-
-#include "ace/post.h"
-#endif /* ACE_THREAD_EXIT_H */