[Ace-users] [ace-users] Singlethread servant upcall (using CSD)
Jochen Rothenbacher
jochen.rothenbacher at nsn.com
Thu Oct 11 03:22:34 CDT 2007
Hi,
ext Douglas C. Schmidt wrote:
(...)
>> in the meantime we found the problem. We have to use the Wait-on-Read
>> Wait Strategy.
Unfortunately we can't use this option because we run into a deadlock
situation when two processes took over the client role and try to call
each other.
>>
>> The "borrowing" of other threads by the ORB caused serious racing
>> conditions. I'm really wondering why this is the default when the POA
>> is configured with the thread policy
>> PortableServer::SINGLE_THREAD_MODEL.
>
> The ORB and the POA policies are at different levels of abstraction
> and should be completely orthogonal.
>
Our basic problem is that incoming calls can overtake each other by being
processed in different threads. The main reason for taking the client
strategy factory "Wait-on-Read Wait" (rw) was to avoid the borrowing of
other threads for incoming calls.
Because we've implemented a CSD Strategy which queues these calls for
later dispatching in an other thread it is simply the order of the
incoming calls which leads to problems in our application.
Is it possible to achieve that the ORB didn't borrows an other thread
without blocking?
Gruss Jochen
--
Jochen Rothenbacher Nokia Siemens Networks GmbH & Co. KG
EMail: jochen.rothenbacher at nsn.com
More information about the Ace-users
mailing list