Re: An interesting deadlock in ORBit2...



Michael Meeks wrote:
> Hi Justin,
> 
> On Wed, 2003-12-10 at 14:51, Justin Schoeman wrote:
> 
>>OK: First deadlock (seems the main loop grabbed the response, or 
>>something strange... linc is explicitly iterating the main loop, but 
>>under a different context.
> 
> 
> 	Right; that's it. Hmm; so - I guess the constraint to add is - you can
> only run the link inferior loop if you can acquire the glib mainloop.
> Could you try adding:
> 
> 	g_main_context_acquire();
> 	g_main_context_release();
> 
> 	at top and tail of link_main_iteration - I'd be interested if that
> fixes the problem; Then again, thinking about it that won't work since
> the mainloop is recursively dispatching stuff.
> 
> 	I guess the solution is - you either run the gmainloop on the 'main'
> thread (that which initialises the ORB) or not at all.
> 
> 	However, you don't need to run it at all now so ...

That is fortunate!  It would be remarkably inconvenient to force all 
CORBA clients to do their processing in a sub-thread ;-)

Thanks for all the help!

-justin





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]