Re: Asynchronous procedure call with ORBit.
- From: Bill Haneman <bill haneman sun com>
- To: orbit-list gnome org
- Subject: Re: Asynchronous procedure call with ORBit.
- Date: Sun, 18 Nov 2001 17:59:14 +0000
thierry wrote:
>
> Hello folks!
>
> We are a small team working on a project that wish to use ORBit as communication
> fundations. Well, the problem we have is actually very similar to the one posted
> by Edgar Hilton on 30 Oct 2001 17:46:21, but we would like to have a more orbit-
> specific response.
>
> We also have a set of clients that must synchronise their internal lists,
> whenever they are changed on the serveur-side. We've tried to implement
> a specific interface into a new thread directly in the client-side, but it
> seems to confuse orbit, which locks after exchanging some messages. You
> (Rodrigo Moya) have exposed a nice feature, by implementing a such IDL:
>
> interface Server {
> void connectClient (in Client client);
> };
>
> interface Client {
> void notify (...);
> };
>
> How can you send a client object to the server without creating any new
> thread?
>
> As far we know, implementing "Client" interface in the client-side implies
> creating a new running serveur (for associating code and calls to the other
> side).
>
> We know that's not very CORBA-compliant, but can you explain a bit more,
> what's required for doing asynchronous message using the above IDL?
Well, if you want it to be asynchronous, replace
void notify (...)
with
oneway void notify (...) :-)
We implement this basic idea in at-spi, look at :
at-spi/idl/Registry.idl
at-spi/idl/Listener.idl
and
at-spi/test/at.c
at-spi/test/app.c
Registry is a server which receives notify events and propagates them to
listeners, both registry and listeners implement Listener.idl (with
oneway notify() methods). Listeners register with the registry via a
synchronous registerGlobalEventListener() method in which they pass
object references to themselves, the registry later calls notify() on
these object references when events need to be dispatched.
HTH,
Bill
> Thanks a lot!
>
> Thierry Pierron
>
> _______________________________________________
> orbit-list mailing list
> orbit-list@gnome.org
> http://mail.gnome.org/mailman/listinfo/orbit-list
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]