一种基于多核处理器的跳跃表多线程优化方法及设备与流程

文档序号:14835895发布日期:2018-06-30 12:23阅读:来源:国知局
一种基于多核处理器的跳跃表多线程优化方法及设备与流程

技术特征:

1.一种基于多核处理器的跳跃表多线程优化方法,其特征在于,包括:

S1、初始化读写锁Lock为0,读写锁Lock实时记录数据列表中正在进行的数据操作状态;

S2、从跳跃表的最高层索引数据开始逐层查找跳跃表,得到查询数据或者插入数据在数据列表中最近的索引数据;

S3、当操作为数据查询时,对读写锁Lock申请读锁,然后以并行处理的方式进入所述数据列表执行查询操作;

S4、当操作为数据插入时,对读写锁Lock申请写锁,然后进入所述数据列表执行插入操作。

2.如权利要求1所述的基于多核处理器的跳跃表多线程优化方法,其特征在于,所述步骤S3中的以并行处理的方式进入所述数据列表执行查询操作,具体包括:

S31、查看变量Lock的值是否大于或等于零,若是执行步骤S32,若否挂起0.1秒后继续执行步骤S31;

S32、对Lock执行原子操作加1,若执行成功跳转到S33继续执行,若失败跳转到S31继续执行;

S33、进入数据列表执行查询操作;

S34、对Lock执行原子操作减1,结束查询操作。

3.如权利要求1所述的基于多核处理器的跳跃表多线程优化方法,其特征在于,所述步骤S4中的进入所述数据列表执行插入操作,具体包括:

S41、查看变量Lock的值是否等于零,若是执行步骤S42,若否挂起0.1秒后继续执行步骤S41;

S42、对Lock执行原子操作减1,若执行成功跳转到S43继续执行,若失败跳转到S41继续执行;

S43、进入数据列表执行插入操作;

S44、对Lock执行原子操作加1,结束插入操作。

4.一种基于多核处理器的跳跃表多线程优化设备,其特征在于,包括:处理器和存储设备;

处理器,用于实现各指令;

存储设备,用于存储所述各指令,所述各指令由处理器加载并执行:

初始化读写锁Lock为0,读写锁Lock实时记录数据列表中正在进行的数据操作状态;

从跳跃表的最高层索引数据开始逐层查找跳跃表,得到查询数据或者插入数据在数据列表中最近的索引数据;

当操作为数据查询时,对读写锁Lock申请读锁,然后以并行处理的方式进入所述数据列表执行查询操作;

当操作为数据插入时,对读写锁Lock申请写锁,然后进入所述数据列表执行插入操作。

5.如权利要求4所述的基于多核处理器的跳跃表多线程优化设备,其特征在于,所述处理器执行以并行处理的方式进入所述数据列表执行查询操作,具体包括:

a、查看变量Lock的值是否大于或等于零,若是,执行步骤b,若否挂起0.1秒后继续执行步骤a;

b、对Lock执行原子操作加1,若执行成功跳转到步骤c继续执行,若失败跳转到步骤a继续执行;

c、进入数据列表执行查询操作;

d、对Lock执行原子操作减1,结束查询操作。

6.如权利要求4所述的基于多核处理器的跳跃表多线程优化设备,其特征在于,所述处理器执行进入所述数据列表执行插入操作,具体包括:

e、查看变量Lock的值是否等于零,若是,执行步骤f,若否挂起0.1秒后继续执行步骤e;

f、对Lock执行原子操作减1,若执行成功跳转到g继续执行,若失败跳转到e继续执行;

g、进入数据列表执行插入操作;

h、对Lock执行原子操作加1,结束插入操作。

7.一种基于多核处理器的跳跃表多线程优化设备,其特征在于,包括:

初始化模块,用于初始化读写锁Lock为0,读写锁Lock实时记录数据列表中正在进行的数据操作状态;

查找模块,用于从跳跃表的最高层索引数据开始逐层查找跳跃表,得到查询数据或者插入数据在数据列表中最近的索引数据;

查询操作执行模块,对读写锁Lock申请读锁,以并行处理的方式进入所述数据列表执行查询操作;

插入操作执行模块,对读写锁Lock申请写锁,进入所述数据列表执行插入操作。

8.如权利要求7所述的基于多核处理器的跳跃表多线程优化设备,其特征在于,所述查询操作执行模块,具体包括:

第一查看单元,用于查看变量Lock的值是否大于或等于零;

查询操作执行单元,用于在第一查看单元判断为是时,对Lock加1,并进入数据列表执行查询操作,操作结束后对Lock减1;

以及,在第一查看单元判断为否时,等待至Lock大于或等于零时再执行查询操作。

9.如权利要求7所述的基于多核处理器的跳跃表多线程优化设备,其特征在于,所述插入操作执行模块,具体包括:

第二查看单元,用于查看变量Lock的值是否等于零;

插入操作执行单元,用于在第二查看单元判断为是时,对Lock减1,并进入数据列表执行插入操作,操作结束后对Lock加1;

以及,在第二查看单元判断为否时,等待至Lock等于零时再执行插入操作。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1