diff options
author | Marc Laukien <marc@zeroc.com> | 2002-06-14 16:59:42 +0000 |
---|---|---|
committer | Marc Laukien <marc@zeroc.com> | 2002-06-14 16:59:42 +0000 |
commit | 3766cdd886b63c1c7ec92c8e4644de3da137a512 (patch) | |
tree | 2f1a0a61b0781c2bdc530bc9645971b58d4195df /cpp/src/Ice/ThreadPool.cpp | |
parent | fixes (diff) | |
download | ice-3766cdd886b63c1c7ec92c8e4644de3da137a512.tar.bz2 ice-3766cdd886b63c1c7ec92c8e4644de3da137a512.tar.xz ice-3766cdd886b63c1c7ec92c8e4644de3da137a512.zip |
fixes
Diffstat (limited to 'cpp/src/Ice/ThreadPool.cpp')
-rw-r--r-- | cpp/src/Ice/ThreadPool.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/cpp/src/Ice/ThreadPool.cpp b/cpp/src/Ice/ThreadPool.cpp index 98166dbd201..c372fbb29de 100644 --- a/cpp/src/Ice/ThreadPool.cpp +++ b/cpp/src/Ice/ThreadPool.cpp @@ -134,6 +134,7 @@ IceInternal::ThreadPool::ThreadPool(const InstancePtr& instance, bool server) : _multipleThreads = true; } + __setNoDelete(true); try { for (int i = 0 ; i < _threadNum ; ++i) @@ -151,8 +152,15 @@ IceInternal::ThreadPool::ThreadPool(const InstancePtr& instance, bool server) : destroy(); joinWithAllThreads(); + __setNoDelete(false); throw; } + catch (...) + { + __setNoDelete(false); + throw; + } + __setNoDelete(false); } IceInternal::ThreadPool::~ThreadPool() |