name is the name of the thread pool. The name of the client-side thread pool is Ice.ThreadPool.Client, the name of the default server-side thread pool is Ice.ThreadPool.Server. In addition, individual object adapters can have separate thread pools. In this case, the name of the thread pool is adapter_name.ThreadPool. Having a separate thread pool for an object adapter is useful to ensure that a minimum number of threads is available for dispatching requests on certain Ice objects, in order to avoid deadlocks because of thread starvation.
num is the initial and also minimum number of threads in the thread pool. The default is one for Ice.ThreadPool.Client and Ice.ThreadPool.Server, and zero for object adapter thread pools, meaning that by default, object adapters use the default server-side thread pool.
Multiple threads for the client side thread pool are only required for nested AMI invocations. If AMI is not used, or AMI calls are not nested (i.e., AMI callbacks do not call any other methods on Ice objects), then there is no need to set the number of threads in the client thread pool to a value larger than one. |
num is the maximum number of threads for the thread pool name. Thread pools in Ice can grow and shrink dynamically, based on an average load factor. Thread pools do not grow larger than the parameter specified by SizeMax, and they do not shrink to a number of threads smaller than the value specified by Size.
The default value for SizeMax is the value of Size, meaning that by default, thread pools do not grow dynamically.
<<< Previous | Home | Next >>> |
Ice Plug-in Properties | Up | Ice Default and Override Properties |