[omniORB] matter of design:-)

Duncan Grisby dgrisby@uk.research.att.com
Tue, 22 Aug 2000 18:07:38 +0100


On Tuesday 22 August, Edmond Kereku wrote:

> Everything goes ok , i register the objects to the NameService , activate
> POA etc, but it rise a problem when I have to make the ORB run,
> If I use orb->run() the ORB get the main thread and the only way I know to
> return the control to the application is to send a shutdown to the orb (not
> so good cause I still need it)

omniORB is fully multi-threaded, and services incoming calls from its
own threads. You do not need to call orb->run() at all -- you just
need to activate the POA (or POAs). omniORB will happily service
requests while the main thread does something else, or blocks in
another library.

In omniORB, orb->run() just blocks waiting for the ORB to be shut
down; work_pending() and perform_work() are no-ops.

Cheers,

Duncan.

-- 
 -- Duncan Grisby  \  Research Engineer  --
  -- AT&T Laboratories Cambridge          --
   -- http://www.uk.research.att.com/~dpg1 --