[发明专利]一种进程间通信方法、装置及计算机可读存储介质在审
申请号: | 201910300359.3 | 申请日: | 2019-04-15 |
公开(公告)号: | CN110046047A | 公开(公告)日: | 2019-07-23 |
发明(设计)人: | 方攀;陈岩 | 申请(专利权)人: | OPPO广东移动通信有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/54 |
代理公司: | 深圳市恒申知识产权事务所(普通合伙) 44312 | 代理人: | 赵胜宝 |
地址: | 523860 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 缓冲区 进程 计算机可读存储介质 进程间通信 客户端 申请 缓冲区读取数据 数据读操作 数据写操作 读写操作 获取服务 数据交换 服务端 数据源 延时 写入 场景 交换 管理 | ||
1.一种进程间通信方法,应用于包括写客户端、读客户端、服务端、服务管理者以及缓冲区的进程间通信系统,其特征在于,包括:
控制写客户端进程以及读客户端进程均向服务管理者获取服务端进程所申请的缓冲区;
在所述写客户端进程开始数据写操作时,通过所述写客户端进程将数据源所提供的数据写入至所述缓冲区;
在所述读客户端进程开始数据读操作时,通过所述读客户端进程从所述缓冲区读取数据至数据目的地。
2.根据权利要求1所述的进程间通信方法,其特征在于,所述进程间通信系统为基于Binder机制的进程间通信系统,所述缓冲区为共享内存;所述共享内存被分别映射至所述写客户端、读客户端以及服务端的进程地址空间。
3.根据权利要求1所述的进程间通信方法,其特征在于,所述缓冲区为环形缓冲区;
所述在所述写客户端进程开始数据写操作时,通过所述写客户端进程将数据源所提供的数据写入至所述缓冲区包括:
在所述写客户端进程开始数据写操作时,判断数据源所提供的数据的长度是否大于所述环形缓冲区后端的连续可写区域的长度;
若是,则将所述数据源所提供的数据截断为第一数据和第二数据,通过所述写客户端进程将所述第一数据写入所述环形缓冲区后端的连续可写区域,并将所述第二数据在所述环形缓冲区头部的预设连续可写区域进行写入;
若否,则通过所述写客户端进程直接将所述数据源所提供的数据在所述环形缓冲区后端的连续可写区域进行写入;
所述在所述读客户端进程开始数据读操作时,通过所述读客户端进程从所述缓冲区读取数据至数据目的地包括:
在所述读客户端进程开始数据读操作时,判断所需读取至数据目的地的数据的长度是否大于所述环形缓冲区后端的连续可读区域的长度;
若是,则通过所述读客户端进程从所述连续可读区域读取第三数据,以及从所述环形缓冲区头部的预设连续可读区域读取第四数据至数据目的地;所述所需读取至数据目的地的数据包括第三数据和第四数据;
若否,则通过所述读客户端进程直接从所述环形缓冲区后端的连续可读区域读取所述所需读取至数据目的地的数据至所述数据目的地。
4.根据权利要求1所述的进程间通信方法,其特征在于,所述缓冲区配置有互斥锁;
所述通过所述写客户端进程将数据源所提供的数据写入至所述缓冲区之前,还包括:
为所述写客户端进程申请所述互斥锁,将所述缓冲区进行写锁定;
所述通过所述写客户端进程将数据源所提供的数据写入至所述缓冲区之后,还包括:
将所述缓冲区的写锁定进行释放;
所述通过所述读客户端进程从所述缓冲区读取数据至数据目的地之前,还包括:
为所述读客户端进程申请所述互斥锁,将所述缓冲区进行读锁定;
所述通过所述读客户端进程从所述缓冲区读取数据至数据目的地之后,还包括:
将所述缓冲区的读锁定进行释放。
5.根据权利要求1所述的进程间通信方法,其特征在于,所述通过所述写客户端进程将数据源所提供的数据写入至所述缓冲区之前,还包括:
将当前的所述写客户端进程休眠预设时长;
和/或,所述通过所述读客户端进程从所述缓冲区读取数据至数据目的地之前,还包括:
将当前的所述读客户端进程休眠预设时长。
6.根据权利要求1至5中任意一项所述的进程间通信方法,其特征在于,所述控制写客户端进程以及读客户端进程均向服务管理者获取服务端进程所申请的缓冲区之前,还包括:
进行缓冲区初始化操作,将所述缓冲区中的数据清空,并初始化所述缓冲区的描述信息结构体。
7.根据权利要求1至5中任意一项所述的进程间通信方法,其特征在于,还包括:
在所述缓冲区的所有数据读写操作完毕时,进行缓冲区释放操作,将所述缓冲区进行清空,并将所述缓冲区所占内存空间进行删除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于OPPO广东移动通信有限公司,未经OPPO广东移动通信有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910300359.3/1.html,转载请声明来源钻瓜专利网。