
Originally Posted by
marc
If you use multiple threads for dispatch, then your requests are processed in parallel, and you have no control over the ordering. This is nothing specific to Ice, but simply how multi-threaded systems work.
For oneway requests in particular, see also
this FAQ.
Thanks for your answer.
I'm sorry I didn't express my question clearly.
I know you said.
When the server employ a thread pool with multiple threads, We could force the thread pool to dispatch requests serially by setting one of properties Ice.ThreadPool.name.Serialize or adapter-name.ThreadPool.Serialize.
A multi-threaded pool for serializtion can dispatch requests for different connections concurrently while serializing requests form the same connection.
But this isn't what I want.
My question is , for example
Code:
xxx.ice
...
interface A {
... // other operation
int op(int argument);
};
...
client.cpp
...
APrx prx = ...;
...
prx->begin_op(...); // Time1
prx->begin_op(...); // Time2
...
Server:
Configuring the thread pool to support multiple threads, I want the same operation from the same connection or different connection can be dispatched and processed serialtized in the Server, but the different operations can be dispathced and processed in parallel.
I want to know how to configure the Ice server or is there some interfaces for us to do this.