diff options
Diffstat (limited to 'cpp/src/Ice/ObjectAdapterI.cpp')
-rw-r--r-- | cpp/src/Ice/ObjectAdapterI.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/cpp/src/Ice/ObjectAdapterI.cpp b/cpp/src/Ice/ObjectAdapterI.cpp index 790a2d33cea..ceebd9e70b3 100644 --- a/cpp/src/Ice/ObjectAdapterI.cpp +++ b/cpp/src/Ice/ObjectAdapterI.cpp @@ -724,11 +724,14 @@ Ice::ObjectAdapterI::ObjectAdapterI(const InstancePtr& instance, const Communica setLocator(_instance->referenceFactory()->getDefaultLocator()); } - int size = _instance->properties()->getPropertyAsInt(_name + ".ThreadPool.Size"); - int sizeMax = _instance->properties()->getPropertyAsInt(_name + ".ThreadPool.SizeMax"); - if(size > 0 || sizeMax > 0) + if(!_instance->threadPerConnection()) { - _threadPool = new ThreadPool(_instance, _name + ".ThreadPool", 0); + int size = _instance->properties()->getPropertyAsInt(_name + ".ThreadPool.Size"); + int sizeMax = _instance->properties()->getPropertyAsInt(_name + ".ThreadPool.SizeMax"); + if(size > 0 || sizeMax > 0) + { + _threadPool = new ThreadPool(_instance, _name + ".ThreadPool", 0); + } } } catch(...) |