[omniORB] question re: threading

David Riddoch djr@uk.research.att.com
Thu, 4 Nov 1999 09:55:35 +0000 (GMT)


On Wed, 3 Nov 1999, Rob Cecil wrote:

> Hello,
> 
> I have been doing some basic work on omniORB2 (2.8.0), predominantly on the server side of
> things.  I don't have a lot of experience with multithreaded apps and realize that
> omniORB2 itself is multithreaded.  Does this imply that any server implementations that I
> write should be threadsafe?

Yes.

  What if I use yet another 3rdparty library ( for example Qt
> ), as part of the implementation of a server implementation.  Am I shooting myself in the
> foot by including non-threadsafe libraries?

You just need to ensure that you serealise you calls into non-thread-safe
libraries with a mutex or something.  Alternatively you can serealise your
CORBA calls by holding a mutex in every implemented operation.

>  I have noticed ACE/TAO has very precise
> threading behavioral control over server invocations and wondered if something like that
> is in the works.

If you use omniORB 3 (available via CVS and snapshots) you will be able to
have single-threaded object implementations or multi-threaded ones, as
described in the POA specification.


Hope that helps,
David