前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >.NET Remoting 体系结构 之 消息接收器

.NET Remoting 体系结构 之 消息接收器

作者头像
DougWang
发布2020-02-17 17:34:27
5500
发布2020-02-17 17:34:27
举报
文章被收录于专栏:java跬步

Activator.GetObject()方法调用 RemotingServices.Connect()方法连接已知对象。在 Connect()方法中,Unmarshal()方法不但在创建代理时发生,也在创建特使接收器时发生。代理使用一个特使接收器链把消息传递到信道中。所有接收器都是侦听器,它们可以更改消息,执行一些额外的操作,如创建锁、写事件以及执行安全检查等。所有消息接收器都实现 IMessageSink 接口,这个接口定义一个属性和两个方法:

●  NextSink 属性——接收器使用这个属性到达下一个接收器,并向前传递消息。

● SyncProcessMessage()方法 ——对于同步消息,前面的接收器或远程基础结构调用这个方法, 它的 IMessage 参数用于发送消息和返回消息。

● syncProcessMessage()方法 ——对于异步消息,接收器链中前面的接收器或远程基础结构 调用这个方法。该方法有两个参数:消息和接收回应的消息接收器。 下面几节讨论可以使用的 3 个不同的消息接收器

1. 特使接收器

通过 IEnvoyInfo 接口,可以到达特使接收器链。编组对象引用 ObjRef 有一个 EnvoyInfo 属性, 该属性返回 IEnvoyInfo 接口。特使列表从服务器上下文中创建,因此,服务器可以把一些功能注入 客户端。特使可以收集客户端的身份信息,并把这些信息传递给服务器。

2. 服务器上下文接收器

在信道的服务器端接收消息时,消息就传递给服务器上下文接收器。服务器上下文接收器链中 的后一个接收器把消息传递到对象接收器链中。

3. 对象接收器

对象接收器与某个具体的对象关联。如果对象类定义特定上下文特性,就为该对象创建上下文 接收器。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2013-02-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档