使用 Marshal 实现Remoting调用和本地调用

standlove 2004-05-08 01:22:12
我现在要做一个类, 这个累的方法可以在本地调用, 也可以从远程调用。
如果需要实现 Remoting 的访问方式的话, 一定要实现 MarshalByRefObject 接口, 但是这个样子是不是会影响 本地调用的性能。
(因为本地调用不需要这个接口的支持)

所以不知道下面这个方法可不可行(有无必要):
做两个类, 一个用于本地调用, 另一个用于远程调用(它的所有函数只是简单地 delegate 到本地类的函数)。

另外问一下:
如果让一个接口来实现 MarshalByRefObject的话, 那么这个的接口的 实现类是不是 自动可以Marshal 了 ? (感觉好象是不行的, Marshal应该是针对某个具体对象的吧?)
...全文
92 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjblue 2004-05-09
  • 打赏
  • 举报
回复
继承MarshalByRefObject不会产生影响的
没必要做两个类
Brunhild 2004-05-09
  • 打赏
  • 举报
回复
继承MarshalByRefObject不会对本地调用有影响,因为根本用不上
flyingbirddhp 2004-05-08
  • 打赏
  • 举报
回复
呵呵,本地调用对性能影响不大的
huangsuipeng 2004-05-08
  • 打赏
  • 举报
回复
UP先
白掌柜 2004-05-08
  • 打赏
  • 举报
回复
从MarshalByRefObject派生
standlove 2004-05-08
  • 打赏
  • 举报
回复
to citymeteor:
你是说 如果要 Remoting 调用的话, 对象的类必须实现 MarshalByRefObject 接口, 这这个对象实现的接口没关系 ?

to Sunmast:
其实就是简单的 函数调用而已, I do not think it will add too much burden on it.

不过 MarshalByRefObject 如果不会对本地调用产生影响的话(就如citymeteor所说), 那就没有必要。

诸位 确认之后, 就可以结贴了 :-) 多谢
速马 2004-05-08
  • 打赏
  • 举报
回复
代理的性能很低的...
白掌柜 2004-05-08
  • 打赏
  • 举报
回复
看起来用一套机制做会减少工作量,本地调用的性能可以忽略。
另:Remoting 中的实例需要从MarshalByRefObject继承.

111,097

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧