[发明专利]一种数据读写方法及装置有效
申请号: | 201510778058.3 | 申请日: | 2015-11-13 |
公开(公告)号: | CN105446660B | 公开(公告)日: | 2018-08-03 |
发明(设计)人: | 李东鸽;牟晓光 | 申请(专利权)人: | 东软集团股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F12/0877;G06F17/30 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 110179 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 读写 方法 装置 | ||
1.一种数据读写方法,其特征在于,包括:
申请m个读数据线程和n个写数据线程,其中,m和n是大于或等于1的整数;
当m>n时,为m个读数据线程分别申请一个数据缓存队列;将m个数据缓存队列按环形排列,从m个数据缓存队列中选取n个不同的初始队列分别分配给每个写数据线程;利用所述读数据线程,将读到的数据依次压入对应的数据缓存队列中;利用所述写数据线程,从对应的初始队列开始,按所述环形排列依次从每个数据缓存队列中取出数据,并将取出的数据写入目标数据源;
当m<n时,为n个写数据线程分别申请一个数据缓存队列;将n个数据缓存队列按环形排列,从n个数据缓存队列中选取m个不同的初始队列分别分配给每个读数据线程;利用所述读数据线程,从对应的初始队列开始,按所述环形排列依次将读到的数据压入对应的数据缓存队列中;利用所述写数据线程,从对应的数据缓存队列中取出数据,并将取出的数据写入目标数据源。
2.根据权利要求1所述的方法,其特征在于,
所述从m个数据缓存队列中选取n个不同的初始队列分别分配给每个写数据线程,包括:
从m个数据缓存队列中为每个写数据线程选取一个不同的初始队列,其中,基于所述环形排列:
若m/n不能整除且m/n取整数后为b,则有一对相邻初始队列之间间隔的数据缓存队列数为m-b-n+1,其它每相邻两个初始队列之间间隔的数据缓存队列数为b-1;
若m/n能整除,则每相邻两个初始队列之间间隔的数据缓存队列数为b-1;
所述从n个数据缓存队列中选取m个不同的初始队列分别分配给每个读数据线程,包括:
从n个数据缓存队列中为每个读数据线程选取一个不同的初始队列,其中,基于所述环形排列:
若n/m不能整除且n/m取整数后为b,则有一对相邻初始队列之间间隔的数据缓存队列数为m-b-n+1,其它每相邻两个初始队列之间间隔的数据缓存队列数为b-1;
若n/m能整除,则每相邻两个初始队列之间间隔的数据缓存队列数为b-1;
其中,b为大于0的整数。
3.根据权利要求1所述的方法,其特征在于,
所述利用所述写数据线程,从对应的初始队列开始,按所述环形排列依次从每个数据缓存队列中取出数据,包括:
从所述写数据线程对应的初始队列开始,按所述环形排列依次遍历每个数据缓存队列;
若所述写数据线程有错误,则使所述写数据线程结束;
若所述写数据线程无错误且未连续遍历到m个空的数据缓存队列,则当当前遍历的数据缓存队列不为空时,从当前遍历的数据缓存队列中取出数据;
若所述写数据线程无错误且未连续遍历到m个空的数据缓存队列,则当当前遍历的数据缓存队列为空时,遍历下一数据缓存队列;
若所述写数据线程无错误且连续遍历到m个空的数据缓存队列,则判断m个读数据线程是否全部结束,若是,则使所述写数据线程结束,若否,则在等待第一设定时间段后,从下一数据缓存队列开始,按所述环形排列依次遍历每个数据缓存队列;
所述利用所述读数据线程,从对应的初始队列开始,按所述环形排列依次将读到的数据压入对应的数据缓存队列中,包括:
从所述读数据线程对应的初始队列开始,按所述环形排列依次遍历每个数据缓存队列;
若所述读数据线程有错误,则使所述读数据线程结束;
若所述读数据线程无错误且未连续遍历到m个满的数据缓存队列,则当当前遍历的数据缓存队列不满时,将读到的数据压入当前遍历的数据缓存队列中;
若所述读数据线程无错误且未连续遍历到m个满的数据缓存队列,则当当前遍历的数据缓存队列满时,遍历下一数据缓存队列;
若所述读数据线程无错误且连续遍历到m个满的数据缓存队列,则在等待第二设定时间段后,从下一数据缓存队列开始,按所述环形排列依次遍历每个数据缓存队列。
4.根据权利要求3所述的方法,其特征在于,每个数据缓存队列分别与一个索引号一一对应;所述按所述环形排列依次遍历每个数据缓存队列,包括:
根据每个数据缓存队列对应的索引号,按所述环形排列依次遍历每个数据缓存队列。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东软集团股份有限公司,未经东软集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510778058.3/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置