Please give explanation
There is a very big difference.
To be as clear as possible :
Marshalling by value is finally a value copy. At the end of the
operation (generaly some call in remoting), the client is getting the
perfect copy of the objet living on the server. All local changes on
the client is not propagated to the copy on the server. It is just a
way to get a client object in the same state as the one on the server.
Marshalling by reference is a more complex mecanism. The client is
receiving a reference on the server objet and when the client is acting
on this object (method calls, property changes..) these requests are
fulfilled by the object living on the server side.
In this mode, a proxy is created in the client memory, the latter is
speaking with a stub created in the server memory. A complex mecanism
is acting behing the scene to manage the life cycle of the object on
the server because the instance can be destroyed on the server by the
garbage collector (since the object is not "in use" on the server
side). LeaseManager, sponsors and other classes can be used on server
to make the object life longer if needed.
Hoping this is clear enough, since english is not my mother tongue ...
--
OD___
www.e-naxos.com