当前位置: 首页 > 专利查询>索尼公司专利>正文

数据处理方法、记录介质及数据处理设备技术

技术编号:2887564 阅读:154 留言:0更新日期:2012-04-11 18:40
即使存在多个服务对象且由不同服务对象接收处理请求和返回处理结果时,也能恰当进行消息传递。当将消息从客户对象发送到服务对象时,存储服务对象所执行的处理结果的数据区被保留出来。服务对象执行处理时,在服务对象之间委托授权将服务对象的处理结果返回给客户对象。然后,最近被委托拥有上述授权的对象所执行的处理结果存储在数据区中。然后客户对象读取数据区中所存储的数据从而接收服务对象的处理结果。(*该技术在2019年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及在客户对象与多个服务对象间交换消息时所使用的一种数据处理方法。本专利技术也涉及一种记录执行上述数据处理方法的操作系统的记录介质,以及一种具有上述记录介质的数据处理设备。迄今为止,通常用功能调用描述如应用程序之类的软件。功能调用的基本操作过程如附图说明图1所示。图1中,功能调用侧示为客户,而功能调用接收侧示为服务器。在功能调用中,客户调用服务器的功能,如图1中箭头A1所示,从而使服务器执行该功能,如图1中实线A2所示。在此功能调用期问,客户处于等待状态,如图1中虚线A3所示。一旦完成服务器执行的处理,服务器将数值返回到客户,如图1中箭头A4所示,从而使客户重新启动处理,如图1中实线A5所示。随着近来软件设计技术的进步,基于面向对象技术的软件得到了发展。当面向对象技术被应用于软件时,软件的功能,例如应用程序,可以通过对象的形式形成模块。通过以消息的形式彼此交换所需要的信息,对象以模块的形式完成其功能。这种消息交换称作“消息传递”。作为一种执行消息传递的方法,人们已经提出了不同的技术并已将它们付诸实施。其中一种技术是基于“未来”的消息传递。基于未来的消息传递的基本操作如图2所示。如图2中箭头B1所示,在基于未来的消息传递中,消息从客户对象发送到服务对象,以请求服务对象执行预定的处理。此时,用于存储服务对象所执行的处理结果的数据区被保留出来。该数据区用于存储将由客户对象接收的结果并称之为“未来”。如图2中实线B2所示,服务对象根据从客户对象发送的消息请求执行处理。当处理完成时,服务对象将处理结果存储在未来中,如图2中箭头B3所示。同时,客户对象在将上述消息发送给服务对象后继续处理,如图2中实线B4所示。因此,当客户对象需要服务对象所执行的处理结果时,它就读出存储在未来中的数据,如图2中箭头B5所示。此时,如果服务对象所执行的处理结果还没有被存储在未来中,那么客户对象处于等待状态,如图2中虚线B6所示。当服务对象发送的处理结果存储在未来中时,该处理结果从未来传递到客户对象,如图2中箭头B7所示。也就是说,如果服务对象所执行的处理结果存储在未来中,那么客户对象立即接收该处理结果。但是,如果服务对象所执行的处理结果还没有被存储在未来中,在该结果存储在未来中之前客户对象保持在等待状态。在面向对象软件的开发中,如上所述,软件的功能,例如应用程序,可以通过对象的形式形成模块。在这种情况下,诸如应用程序的软件可由单个对象实现。或者,再将应用程序的每一功能形成模块,使应用程序能由多个对象实现。在执行上述消息传递时,如果服务对象由单个对象实现,它响应于来自客户对象的消息用单个对象执行客户对象所请求的处理,并随后将处理结果传递给客户对象。由于事实上由同一对象接收处理请求并返回处理结果,因此这种消息传递可用与图1所示功能调用原理类似的方式来处理。即使有多个服务对象,如果接收处理请求的服务对象与返回处理结果的服务对象是同一个,就可用与功能调用原理类似的方式处理上述消息传递。但是,如果有多个服务对象,且接收处理请求的服务对象与返回处理结果的服务对象不同,就不能用与功能调用原理类似的方式处理上述消息传递。因此,客户对象必须考虑由不同服务对象接收处理请求和返回处理结果就变得十分必要。但是,客户服务器的这种需求成为编程时的严重负担。因此,考虑到现有技术的上述现状,本专利技术的一个目的是提供一种数据处理方法,其中,即使有多个服务对象,且接收处理请求的服务对象与返回处理结果的服务对象不同时,也能在客户对象与服务对象之间进行消息传递而不需客户对象考虑由不同服务对象接收处理请求和返回处理结果。本专利技术的另一目的是提供一种记录介质以及设有这种记录介质的数据处理设备,这种记录介质上记录实现上述数据处理方法的操作系统。为了实现上述目的,本专利技术一方面提供一种数据处理方法,其中消息从客户对象发送到具有两个或两个以上对象的服务对象,服务对象响应消息的请求执行处理并将处理结果返回给客户对象。在上述数据处理方法中,消息一旦从客户对象发送给服务对象时,就保留出用于存储服务对象所执行的处理结果的数据区。当服务对象响应于消息请求而执行处理时,在服务对象的对象之间委托将服务对象所执行的处理结果返回给客户对象的授权。最近被委托拥有授权的对象所执行的处理结果存储在数据区中。通过读取存储在数据区的数据,客户对象接收由服务对象所执行的处理结果。通过这种安排,在服务对象的对象之间委托将服务对象所执行的处理结果返回给客户对象的授权,且最近被委托拥有授权的对象的处理结果存储在数据区中。这样,即使由不同的对象接收处理请求和返回处理结果,通过上述数据区也能正确地将服务对象所执行的处理结果传递给客户对象。按照本专利技术的另一方面,提供一种记录操作系统的记录介质。所述操作系统具有将消息从客户对象发送到服务对象的消息发送装置,以及用于在对象间委托授权的授权委托装置,两装置均用作描述对象的应用程序接口。通过被请求执行消息发送装置功能,上述操作系统将消息从客户对象发送到服务对象,并保留出数据区用于存储服务对象所执行的处理结果。通过被请求执行授权委托装置功能时,操作系统将返回服务对象所执行的处理结果给客户对象的授权从服务对象的一个对象委托给服务对象的另一对象。服务对象响应由消息发送装置发送到服务对象的消息而完成处理后,操作系统存储对象所执行的处理结果,该对象是被授权委托方法最近委托拥有授权的对象。通过这种安排,一旦服务对象响应于由消息发送装置发送到服务对象的消息而完成处理后,记录在记录介质上的操作系统将对象所执行的处理结果存储在数据区中,该对象是被授权委托装置最近委托拥有上述授权的对象。同时,通过读取存储在数据区的数据,客户对象能接收服务对象的处理结果,而不管授权是否委托给该服务对象。因此,使用上述操作系统,即使由服务对象的不同对象接收处理请求和返回处理结果,也能通过数据区正确地将服务对象的处理结果传递给客户对象。按照本专利技术的另一方面,提供一种数据处理设备,它含有记录操作系统的记录介质。所述操作系统具有将消息从客户对象发送到服务对象的消息发送装置,以及用于在对象间委托授权的授权委托装置,两装置均用作描述对象的应用程序接口。通过被请求执行消息发送装置功能,上述操作系统将消息从客户对象发送到服务对象,并保留出数据区用于存储服务对象所执行的处理结果。通过被请求执行授权委托装置功能,操作系统将返回服务对象所执行的处理结果给客户对象的授权从服务对象的一个对象委托给服务对象的另一对象。服务对象一旦响应由消息发送装置发送到服务对象的消息而完成处理,操作系统存储对象所执行的处理结果,该对象是被授权委托装置最近委托拥有授权的对象。利用这种安排,服务对象一旦响应由上述消息发送装置发送服务对象的消息而完成处理,记录在用于上述数据处理设备的记录介质上的操作系统将对象所执行的处理结果存储在数据区中,该对象是被授权委托装置最近委托拥有上述授权的对象。同时,通过读取存储在数据区的数据,客户对象能接收服务对象的处理结果,而不管授权是否委托给该服务对象。因此,使用上述操作系统,即使由服务对象的不同对象接收处理请求和返回处理结果,也能通过数据区正确地将服务对象的处理结果传递给客户对象。在本说明书中,用于管理应用程序执本文档来自技高网...

【技术保护点】
一种消息从客户对象发送到服务对象的数据处理方法,所述服务对象包括两个或两个以上的对象,所述服务对象响应消息请求执行处理过程并将所述处理过程的结果返回给所述客户对象,所述方法包括步骤:一旦将所述消息从所述客户对象发送到所述服务对象,保留出 存储所述服务对象所执行的处理结果的数据区;一旦所述服务对象响应消息请求执行处理过程,在所述服务对象的对象之间委托授权将所述服务对象所执行的处理过程的结果返回给所述客户对象;在数据区中存储由所述服务对象的对象所执行的处理过程的结果,该 对象最新被委托拥有授权;以及所述客户对象通过读取存储在数据区中的数据而接收所述服务对象所执行的处理过程的结果。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:森山光一
申请(专利权)人:索尼公司
类型:发明
国别省市:JP[日本]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1