diff options
author | schmidt <douglascraigschmidt@users.noreply.github.com> | 1999-07-31 22:18:20 +0000 |
---|---|---|
committer | schmidt <douglascraigschmidt@users.noreply.github.com> | 1999-07-31 22:18:20 +0000 |
commit | 10f1729b65638f3f273f523861dd547ec6832e5f (patch) | |
tree | a49c98ad0d34bcb5a87c9f7fb1a256c7bf4df6dd /ace/Object_Manager.h | |
parent | 3e172150a24e32f471d10eb9a60eebb599de6f81 (diff) | |
download | ATCD-10f1729b65638f3f273f523861dd547ec6832e5f.tar.gz |
ChangeLogTag:Sat Jul 31 12:07:48 1999 Douglas C. Schmidt <schmidt@mambo.cs.wustl.edu>
Diffstat (limited to 'ace/Object_Manager.h')
-rw-r--r-- | ace/Object_Manager.h | 68 |
1 files changed, 33 insertions, 35 deletions
diff --git a/ace/Object_Manager.h b/ace/Object_Manager.h index 46c55d46a9a..f9b6db943d9 100644 --- a/ace/Object_Manager.h +++ b/ace/Object_Manager.h @@ -153,35 +153,35 @@ class ACE_Export ACE_Object_Manager : public ACE_Object_Manager_Base // late. The ACE tests do not violate this requirement. // However, applications may have trouble with it. // - // NOTE on the use of ::exit (): ::exit () does not destroy + // NOTE on the use of <::exit> -- <::exit> does not destroy // static objects. Therefore, if // ACE_HAS_NONSTATIC_OBJECT_MANAGER is enabled, the - // ACE_Object_Manager instance will *not* be destroyed if ::exit - // () is called! However, ACE_OS::exit () will properly destroy - // the ACE_Object_Manager. It is highly recommended that - // ACE_OS::exit () be used instead of ::exit (). + // <ACE_Object_Manager> instance will *not* be destroyed if + // <::exit> is called! However, <ACE_OS::exit> will properly + // destroy the ACE_Object_Manager. It is highly recommended + // that <ACE_OS::exit> be used instead of <::exit>. // - // However, ::exit () and ACE_OS::exit () are tricky to use + // However, <::exit> and <ACE_OS::exit> are tricky to use // properly, especially in multithread programs. It is much // safer to throw an exception (or simulate that effect) that - // will be caught by main () instead of calling exit. Then, - // main () can perform any necessary application-specific - // cleanup and return the status value. In addition, it's - // usually best to avoid calling ::exit () and ACE_OS::exit () - // from threads other than the main thread. Thanks to Jeff - // Greif <jmg@trivida.com> for pointing out that ::exit () - // doesn't destroy automatic objects, and for developing the + // will be caught by <main> instead of calling exit. Then, + // <main> can perform any necessary application-specific cleanup + // and return the status value. In addition, it's usually best + // to avoid calling <::exit> and <ACE_OS::exit> from threads + // other than the main thread. Thanks to Jeff Greif + // <jmg@trivida.com> for pointing out that <::exit> doesn't + // destroy automatic objects, and for developing the // recommendations in this paragraph. // - // Instead of creating a static ACE_Object_Manager, or letting - // ACE create it on the stack of main () for you, another + // Instead of creating a static <ACE_Object_Manager>, or letting + // ACE create it on the stack of <main> for you, another // alternative is to #define // ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER. With that // #define, the application must create the ACE_Object_Manager. - // The recommended way is to call ACE::init () at the start of - // the program, and call ACE::fini () at the end. - // Alternatively, the application could explicity construct an - // ACE_Object_Manager. + // The recommended way is to call <ACE::init> at the start of + // the program, and call <ACE::fini> at the end. Alternatively, + // the application could explicity construct an + // <ACE_Object_Manager>. public: virtual int init (void); @@ -211,15 +211,14 @@ public: // ACE_HAS_NONSTATIC_OBJECT_MANAGER is not defined.) static int at_exit (ACE_Cleanup *object, void *param = 0); - // Register an ACE_Cleanup object for cleanup at process termination. - // The object is deleted via the ace_cleanup_destroyer (). If you - // need more flexiblity, see the other at_exit () method below. For - // OS's that do not have processes, cleanup takes place at the end of - // main (). Returns 0 on success. On failure, returns -1 and sets - // errno to: - // EAGAIN if shutting down, - // ENOMEM if insufficient virtual memory, or - // EEXIST if the object (or array) had already been registered. + // Register an ACE_Cleanup object for cleanup at process + // termination. The object is deleted via the + // <ace_cleanup_destroyer>. If you need more flexiblity, see the + // <other at_exit> method below. For OS's that do not have + // processes, cleanup takes place at the end of <main>. Returns 0 + // on success. On failure, returns -1 and sets errno to: EAGAIN if + // shutting down, ENOMEM if insufficient virtual memory, or EEXIST + // if the object (or array) had already been registered. static int at_exit (void *object, ACE_CLEANUP_FUNC cleanup_hook, @@ -232,17 +231,16 @@ public: // "cleanup_hook" function; the first parameter is the object (or // array) to be destroyed. "cleanup_hook", for example, may delete // the object (or array). For OS's that do not have processes, this - // function is the same as at_thread_exit (). Returns 0 on success. - // On failure, returns -1 and sets errno to: - // EAGAIN if shutting down, - // ENOMEM if insufficient virtual memory, or - // EEXIST if the object (or array) had already been registered. + // function is the same as <at_thread_exit>. Returns 0 on success. + // On failure, returns -1 and sets errno to: EAGAIN if shutting + // down, ENOMEM if insufficient virtual memory, or EEXIST if the + // object (or array) had already been registered. #if 0 /* not implemented yet */ static int at_thread_exit (void *object, ACE_CLEANUP_FUNC cleanup_hook, void *param); - // Similar to at_exit (), except that the cleanup_hook is called + // Similar to <at_exit>, except that the cleanup_hook is called // when the current thread exits instead of when the program terminates. #endif /* 0 */ @@ -361,7 +359,7 @@ public: public: // Application code should not use these explicitly, so they're // hidden here. They're public so that the ACE_Object_Manager can - // be constructed/destructed in main () with + // be constructed/destructed in <main> with // ACE_HAS_NONSTATIC_OBJECT_MANAGER. ACE_Object_Manager (void); ~ACE_Object_Manager (void); |