remoting 944 B

1234567891011121314151617181920212223242526
  1. Runtime support for Remoting
  2. ============================
  3. The runtime supports a special objects called "TransparentProxy". You can
  4. create objects of this type by calling GetTransparentProxy() on a "RealProxy"
  5. object.
  6. LDFLD/STFLD for transparent proxies
  7. ===================================
  8. Access to fields must be redirected to the remote object. System.Object has
  9. some special methods for that:
  10. void FieldGetter (string typeName, string fieldName, ref object val);
  11. void FieldSetter (string typeName, string fieldName, object val);
  12. This methods are never called on actual object. The are only used to pack
  13. LDFLD/STFLD operations into method call messages, which are then passed to the
  14. RealProxy::Invoke() method.
  15. There are two helper methods which can be used by the JIT and the interpreter
  16. to convert LDFLD/STFLD operations into messages and then call
  17. RealProxy::Invoke(): mono_store_remote_field() and mono_load_remote_field().