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

Re: [xmlblaster] C++ deadlock with mico

Juergen Prinz wrote:
Hi Marcel
thanks for the qick responses.

For the moment I'm only testing to connect TIMS-sites (it is IDVS using LINUX),
so I used a workaround, which dit it.
For the other solutions I would need more time and Kroners

Hi again,

i have noticed that mico 2.3.11 is out which supports
now multi threading.

With minor changes in our corba abstraction header and removing
   orb_->work_pending() ...
it is running now like a charme. The subscribe() in the update()
runs as well.

The code change is commited to cvs (on branch DEV_085),



Hope to see you


Hi Juergen,

nice to meet you here!

I just compiled mico and omniOrb and it is as Michele said:
mico is single threaded which leads to a deadlock when calling
a remote message from a callback.

You have to choose:

o mico -> avoid the above

o orbix -> have some spare Kroner to buy it

o tao -> is very huge but works fine

o omniORB -> is small, high performing (would be my choice)

o Finish the C plugin embedding into C++
   -> You may need to add a C thread pool into the C code first
   -> Is very tiny and you don't need any CORBA anymore
   -> Would be a nice contribution to xmlBlaster



Hi Juergen,
the problem is that MICO is not a multithread orb. We tested what you suggested with omniorb and tao and both work. I think if you want this feature you need to switch to a multithread orb like tao omniorb or orbix.


Jürgen Prinz wrote:

I encountered a problem using c++ when calling a subscribe to the xmlBlaster out of the update-callback. The callback was invoked before the "Main"-subscribe returned. Neither call to subscibe returned.
This can be demonstrated by modifiing SubscribeDemo.cpp too.

When using java there are no problems dooing this.

Best regards

J. Prinz

-- http://www.xmlBlaster.org