[omniORB] omniORBpy deadlock / termination problem.
Duncan Grisby
duncan at grisby.org
Fri Sep 19 17:04:06 BST 2003
On Monday 15 September, Harri Pasanen wrote:
> However, at exit my script hangs, as some threads are left running.
> I've narrowed it down to the fact that cxxObjRefToPyObjRef() calls
> ORB_Init() again, when the orb has already been initialized by the
> C++.
>
> There seems to be a the scavenger/scan threads left running.
[...]
> As a test, If I modify cxxObjRefToPyObjRef() not to call ORB_Init(),
> and make sure I don't call it from Python either, then my python
> program terminates ok.
Hmm. Something is going wrong here. In omniORB, there is only ever one
ORB, so the call to ORB_init() in cxxObjRefToPyObjRef should get the
same ORB that's in use by the C++ world. Something bad has happened to
cause it to create another one, and I'm surprised things don't blow up
terribly as a result. There must be something odd going on with the
way the dynamic linker links things in.
What platform are you using?
Cheers,
Duncan.
--
-- Duncan Grisby --
-- duncan at grisby.org --
-- http://www.grisby.org --
More information about the omniORB-list
mailing list