[发明专利]基于数据隔离避免线程冲突的方法有效
申请号: | 201310608202.X | 申请日: | 2013-11-27 |
公开(公告)号: | CN103617025B | 公开(公告)日: | 2017-03-08 |
发明(设计)人: | 周文俊;丛春涛;刘国华;杨冰;孙发恩;贺强;孟庆媛;朱晓磊;宋先慧;袁文广 | 申请(专利权)人: | 积成电子股份有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F9/40 |
代理公司: | 济南舜源专利事务所有限公司37205 | 代理人: | 刘玉玲 |
地址: | 250100 山东省*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及多线程应用技术领域,具体涉及一种不破坏并发性能的基于数据隔离避免线程冲突的方法。本发明的应用范围是在多线程中被并发调用且需要存储状态的功能,可以解决其线程冲突的问题。本发明使用的技术手段是数据隔离,数据隔离的方法是将功能引用的静态数据按可能使用该数据的线程数量分解为数据集合,并将数据集合中的数据副本分别分配给调用此功能的各个线程使用。本发明可避免线程冲突,保证功能线程安全,有效提高线程的并发性能,并可实现跨平台操作。 | ||
搜索关键词: | 基于 数据 隔离 避免 线程 冲突 方法 | ||
【主权项】:
一种基于数据隔离避免线程冲突的方法,其特征在于包括如下步骤:(1)确定无需共享的静态数据集合:判断执行进程中各功能对应的静态数据是否需在各线程间共享,选定无需共享的静态数据集合;(2)创建数据副本:根据调用某功能的线程数,为该功能所使用的非共享静态数据创建相应数量的数据副本;根据调用该功能的线程数能否预先确定,分以下两种方式操作:①线程数能预先确定,静态创建数据副本:将该功能对应的静态数据改为数组,数组成员数为调用此功能的线程数,数组成员为各个数据副本;②线程数不能预先确定,动态创建数据副本:将该功能对应的静态数据改为数据映射表,其key类型为线程ID,value类型为静态数据的数据类型;(3)分配数据副本:在线程与数据副本间建立对应关系;根据数据副本创建方式,选择相应方式分配数据副本:①静态分配数据副本:为所调用的功能函数增加一个参数,静态数据和调用该功能的线程函数也增加该参数,根据参数值给某一线程分配对应的数据副本;②动态分配数据副本:获取当前线程的ID号,根据数据映射表查找与之对应的数据副本,若有则直接分配使用,若没有则创建一个数据副本,并将当前线程的ID号与该数据副本的映射关系存入数据映射表;(4)读写操作:各线程根据对应关系调用相应数据副本进行读写操作。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于积成电子股份有限公司,未经积成电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310608202.X/,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置