diff options
author | Johnny Willemsen <jwillemsen@remedy.nl> | 2008-12-03 07:57:38 +0000 |
---|---|---|
committer | Johnny Willemsen <jwillemsen@remedy.nl> | 2008-12-03 07:57:38 +0000 |
commit | e1eb83702cfe1ebc7f7a5474449b336bc897907f (patch) | |
tree | 57616aae5ae0379bae7d22cc360fcbde9da4972b /ACE/ace/Object_Manager.cpp | |
parent | 2930d7f4c50193600731490afcbb004465c26640 (diff) | |
download | ATCD-e1eb83702cfe1ebc7f7a5474449b336bc897907f.tar.gz |
Wed Dec 3 07:55:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl>
Diffstat (limited to 'ACE/ace/Object_Manager.cpp')
-rw-r--r-- | ACE/ace/Object_Manager.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/ACE/ace/Object_Manager.cpp b/ACE/ace/Object_Manager.cpp index a2729403920..f6986c58c6e 100644 --- a/ACE/ace/Object_Manager.cpp +++ b/ACE/ace/Object_Manager.cpp @@ -465,6 +465,21 @@ ACE_Object_Manager::at_exit_i (void *object, return exit_info_.at_exit_i (object, cleanup_hook, param); } +int +ACE_Object_Manager::remove_at_exit_i (void *object) +{ + ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex, ace_mon, + *instance_->internal_lock_, -1)); + + if (shutting_down_i ()) + { + errno = EAGAIN; + return -1; + } + + return exit_info_.remove (object); +} + #if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0) int |