高级软件工程(IDL与ORB接口).ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
interface Object { // PIDL InterfaceDef get_interface (); boolean is_nil(); Object duplicate (); void release (); boolean is_a (in string logical_type_id); boolean non_existent(); boolean is_equivalent (in Object other_object); unsigned long hash(in unsigned long maximum); 这样的操作包括: ORB接口 构件对象模型:COM void create_request (in Context ctx in Identifier operation, in NVList arg_list, inout NamedValue result, out Request request, in Flags req_flag); Policy get_policy (in PolicyType policy_type); DomainManagersList get_domain_managers (); Object set_policy_overrides(in PolicyList policies, in SetOverrideType set_add ); }; ORB接口 InterfaceDef get_interface (); ImplementationDef get_implementation (); 确定对象实现和接口 对象引用上的get_interface操作返回 Interface Repository里的一个对象 该对象提供可能对程序有用的类型信息 Object上的get_implementation操作 返回实现池里的一个对象 该对象描述对象的实现 ORB接口 构件对象模型:COM Object duplicate (); void release (); 复制和释放对象引用的拷贝 如果需要多于一个的对象引用 则客户可以用duplicate操作创建一个副本 注意:对象实现不能创建副本 而且实现方也不能区别在一个特定的请求中 客户使用的是原来的对象引用还是副本 当程序不再需要一个对象引用时 则可以用release操作收回它所占用的存储空间 注意:对象实现不能进行这样的操作 对象自身和任何其他对它的引用 都不会受到release操作的影响 ORB接口 boolean is_a (in string logical_type_id) 等价性检查操作 定义该操作的目的是在一个ORB范围上 帮助维护对象引用的类型安全性 如果该对象确实是该类型的一个实例 或者如果该类型是该对象的“最底层”的类型的祖先 则该操作返回true boolean is_nil (); 测试一个对象引用是否为空 一个值为OBJECT_NIL的对象引用表示没有对象 ORB接口 构件对象模型:COM boolean non_existent (); 用来检测一个对象(如一个代理对象)是否已被破坏 那些维护着包括对象引用的状态的服务, 如桥、事件通道和基本关系服务等 可以利用它们的“空闲时间” 使用该操作从对象表中筛选出那些不再存在的对象 并以垃圾收集的形式删除它们 ORB接口 unsigned long hash (in unsigned long maximum); boolean is_equivalent (in Object other_object); 对象引用同一性 为了有效地管理包含大量对象引用的状态 部分服务需要支持一个对象引用同一性的概念 这样的服务包括: 桥 关系服务 其他分层的服务 等 CORBA提供了两个有关同一性的操作 一个操作是把对象引用映射到不相邻的组里 这样的组里的对象引用具有潜在的等价性; 另一个操作是支持开销更大的成对地定价性检查 这些操作一起支持对以对象引用为关键字的表的 高效地维护和检索 ORB接口 构件对象模型:COM Policy get_policy (in PolicyType policy_type); 获取与对象相关的策略 Object set_policy_overrides(in PolicyList policies, in SetOverrideType set_add

文档评论(0)

xiangxiang + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档