[omniORB] OmniEvent Thread question
Alex Tingle
alex.tingle at bronermetals.com
Wed Jan 26 10:35:13 GMT 2005
Hi Thierry,
Each EventChannel has at least one thread. A second thread (the
ProxyPushSupplierManager) is started if you call
ConsumerAdmin::obtain_push_supplier(). The only way to stop these
threads is to destroy the EventChannel.
You say that you've 'disconnected' all of the channels. I assume that
you've disconnected all of the proxies. If you've really finished with
an EventChannel then you should call EventChannel::destroy(). If you
destroy() the channel, then there is no need to disconnect each proxy -
it is all done for you.
EventChannel::destroy() does the following:
o disconnect all currently active proxies.
(Your Suppliers & Consumers will get the disconnect
callback if they registered for it.)
o terminate the channel's (one or two) threads.
o deactivate the EventChannel, ConsumerAdmin, SupplierAdmin &
Proxy objects.
o free the channel's memory.
Hope that helps.
-Alex Tingle
--
Dammit Jim, I'm a programmer... not a mind reader!
On 25 Jan 2005, at 17:40, Le Flour Thierry wrote:
> Hi All,
> i am currently using the OmniEvent(last version) on LINUX box.
> I have a piece of code which create a set of "Event Channel" supplier
> (in push mode).
> When i quit this application , i disconnect all the created channels.
> But, in the process list of my machine ,
> i still have the set of thread(below) corresponding to the channel
> creation:
>
> leflour 22938 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22939 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22940 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22941 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22942 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22943 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22944 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22945 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22946 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22947 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22948 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22949 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22950 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22951 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111
> leflour 22952 22853 0 18:25 pts/12 00:00:00 omniEvents -s 1111*
>
> I don't clearly undestrand why this thread are still there even if
> they are in a "Sleep Mode" ?
> Any Idea ? Many thanks in advance,
> Cheers.
> Thierry Le Flou
>
>>
>
>
> --
> ---------------------------------------------------
> Le Flour Thierry
> Service Informatique
> L.A.P.P. - BP 110, Chemin de Bellevue
> 74941 Annecy le Vieux cedex
>
> Tel : 04.50.09.16.67 - Fax : 04.50.27.94.95
> 04.50.09.16.00
> email: leflour at lapp.in2p3.fr
> ---------------------------------------------------
>
>
> _______________________________________________
> omniORB-list mailing list
> omniORB-list at omniorb-support.com
> http://www.omniorb-support.com/mailman/listinfo/omniorb-list
More information about the omniORB-list
mailing list