[omniORB] Problem w/ multithreaded omniORBpy application

Duncan Grisby duncan@grisby.org
Sun Jun 9 21:32:02 2002


On Saturday 8 June, ml wrote:

> I have written a small client using Python 1.5 under Windows NT
> (sorry for using an obsolete programming language version on an
> obsolete OS), with omniORB 3.0.4 and omniORBpy.  I have two threads:
> One threads is in a CORBA method call, while the other waits for
> receiving (socket.recv()) data from a socket.  Unfortunately, the
> CORBA method call doesn't return.  I'm sure, that the server (also
> omniORB 3.0.4, but C++ and on the same machine returns a value.
> With a simpler client (no second thread for TCP/IP socket
> communication) the CORBA communication seems to work perfectly.  Is
> there any known problem (better: a known solution) when having
> multiple threads in Python with both CORBA and socket communication
> (under Windows NT)?

That should work fine. Are you using the Python socket module?  If you
are using something else, perhaps it fails to release the Python
interpreter lock. Try running with -ORBtraceLevel 30. That might give
some indication of why the CORBA call doesn't return.

Cheers,

Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan@grisby.org     --
   -- http://www.grisby.org --