[发明专利]一种实现进程间数据交换的方法及装置有效
申请号: | 201310549591.3 | 申请日: | 2013-11-07 |
公开(公告)号: | CN104636210B | 公开(公告)日: | 2018-11-09 |
发明(设计)人: | 叶礼伟;罗程;李斌 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 贾允;肖丁 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 进程 数据 交换 方法 装置 | ||
一种实现进程间数据交换的方法,包括:将CFMessagePort封装出服务端接口和客户端接口,服务端进程通过该服务端接口与该CFMessagePort建立服务,客户端进程调用该客户端接口向该服务端进程发送数据处理请求,其中包含所请求的服务端进程的名称,该CFMessagePort根据该服务端进程的名称,在该客户端进程和该服务端进程之间建立连接,将该客户端进程发送的请求处理的数据,转发给该服务端进程进行处理,并将处理后的数据转发给该客户端进程。上述实现进程间数据交换的方法及装置,可提高数据处理速度。
技术领域
本发明涉及通信技术领域,尤其涉及一种实现进程间数据交换的方法及装置。
背景技术
IOS系统为了保证程序有足够的资源来运行的更加稳定、流畅,对程序的运行做了很多的限制,例如不能在后台运行非系统级别的程序,程序切换到后台会在很短时间后被系统挂起停止运行。程序之间不能相互访问资源,因此不能进行程序(或进程)间数据交换。
现有技术中,主要采用socket方式来进行数据交换,socket用于描述IP地址和端口,是一个通信链的句柄。Socket正如其英文原意“插座”那样,象一个多孔插座。主机一般运行多个服务软件,同时提供几种服务,每种服务都打开一个Socket并绑定到一个端口上,不同的端口对应于不同的服务。两个进程之间进行数据交换时,需要该两个进程中一方作为服务端(server)建立起来,另一方则作为客户端(client)连接到服务端给定的接口后就可以进行数据交换。
但是在上述现有技术中,存在下述缺陷:由于需要事先获知服务端进程提供的端口,同时还存在端口被其他进程中的服务端方占用的风险,因此需要在服务端采用动态端口的方式,这就需要借助其他方式将端口通知客户端进程。服务端进程或者客户端进程之间的连接不稳定导致socket连接断开或者发送数据超时,则需要重新连接服务端进程和客户端进程,或者重新发送数据,因此进程间建立和维护socket连接比较繁琐。另外,由于需要事先在进程之间建立服务端和客户端连接,只适合服务端和客户端一对一连接的“星状”的程序架构方式,应用范围窄,并且,对于多个进程之间交互连接的网状连接方式进行数据交换时,则需要在每个进程内部都各自建立一个服务端接口和客户端接口才能满足需要,这样服务端进程和客户端进程之间的数据交换维护起来更加的困难和繁杂,同时对于使用不是很频繁、对数据的实时性要求很高的需求,采用socket方式来实现会大部分时间段无效的占用了系统资源。
发明内容
有鉴于此,本发明提供一种实现进程间数据交换的方法及装置,用于提高进程间处理并交换数据的效率。
本发明实施例提供的实现进程间数据交换的方法,包括:将CFMessagePort进行封装,使得所述CFMessagePort同时为进程提供服务端接口和客户端接口;服务端进程通过所述服务端接口与所述CFMessagePort建立服务;客户端进程调用所述客户端接口向所述服务端进程发送数据处理请求,所述数据处理请求中包含所请求的所述服务端进程的名称;所述CFMessagePort根据所述服务端进程的名称,在所述客户端进程和所述服务端进程之间建立连接,将所述客户端进程发送的请求处理的数据,转发给所述服务端进程进行处理,并将处理后的数据转发给所述客户端进程。
本发明实施例提供的实现进程间数据交换的装置,包括:封装单元,用于将CFMessagePort进行封装,使得所述CFMessagePort同时为进程提供服务端接口和客户端接口;第一建立单元,用于服务端进程通过所述封装单元封装得到的所述服务端接口与所述CFMessagePort建立服务;发送单元,用于客户端进程调用所述封装单元封装得到的所述客户端接口向所述服务端进程发送数据处理请求,所述数据处理请求中包含所请求的所述服务端进程的名称;第二建立单元,用于所述CFMessagePort根据所述发送单元发送的所述服务端进程的名称,在所述客户端进程和所述服务端进程之间建立连接;所述发送单元,还用于将所述客户端进程发送的请求处理的数据,转发给所述服务端进程进行处理,并将处理后的数据转发给所述客户端进程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310549591.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:功耗管理装置
- 下一篇:一种基于嵌入式下VAPS XT软件的Word显示技术
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置