Re: Launchd daemon / user app communication
Re: Launchd daemon / user app communication
- Subject: Re: Launchd daemon / user app communication
- From: Jens Alfke <email@hidden>
- Date: Wed, 01 May 2013 12:46:15 -0700
On May 1, 2013, at 11:11 AM, Erwin Namal < email@hidden> wrote: I understand how observers or delegate works, but I thought that in Distributed Objects, the client had a proxy object and the server a vended object. Seems like using byref could create a proxy object on the server for an existing object on the client.
At the messaging level, DO really doesn't care who's the server and who's the client. When one peer sends a message to a remote (proxy) object, the parameters to that message get encoded and sent to the other peer. If they're objects, they'll either be sent as copies or references. By default a custom class (or protocol) encodes its instances as references.
So what happens is that when you send a server proxy object a "addObserver:" message, the pointer to your observer object gets turned into a reference (byref) and the server sees a proxy for it. The server can keep that proxy around, and when it messages it, the message will be sent over the wire back to the object in your process.
—Jens |
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden