说明:收录全网最新的团体标准 提供单次或批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210895195.5 (22)申请日 2022.07.26 (71)申请人 江苏安超云软件 有限公司 地址 214000 江苏省无锡市经济开发区金 融三街6号1601室 (72)发明人 不公告发明人   (74)专利代理 机构 苏州三英知识产权代理有限 公司 32412 专利代理师 任骁东 (51)Int.Cl. G06F 9/50(2006.01) G06F 9/48(2006.01) (54)发明名称 基于轮询的高性能系统的加解读写锁的方 法及应用 (57)摘要 本发明公开了一种基于轮询的高性能系统 的加解读写锁的方法及应用, 该方法包括以下步 骤: 在加读锁时, 判断当前CP U对应的工作线程中 的第一变量是否为0; 若是, 所述工作线程不存在 加写锁的请求, 所述工作线程加读锁成功, 并将 所述工作线 程中的已加读锁数量加1; 若否, 所述 工作线程存在加写锁的请求, 等待所述工作线程 解写锁。 该方法能够通过按CPU一对一工作线程 维护本地数据结构, 不需要使用互斥锁, 加解读 锁时完全访问该CPU工作线 程只修改本地数据结 构, 加解写锁 通过线程中的变量以及消息传递广 播写来交换写信息, 以达到完全没有睡眠且读只 访问本地变量的高性能读写锁语义, 适合读多写 少场景。 权利要求书2页 说明书8页 附图9页 CN 115202884 A 2022.10.18 CN 115202884 A 1.一种基于轮询的高性能系统的加解读锁的方法, 其特 征在于, 所述方法包括: 在加读锁时, 判断当前CPU对应的工作线程中的第一变量是否为0; 若是, 所述工作线程不存在加写锁的请求, 所述工作线程加读锁成功, 并将所述工作线程中 的已加读锁数量加1; 若否, 所述工作线程存在加写锁的请求, 等待所述工作线程 解写锁。 2.如权利要求1所述的基于轮询的高性 能系统的加解读锁的方法, 其特征在于, 所述方 法还包括: 在解读锁时, 将所述工作线程中的已加读锁数量减1; 判断所述工作线程中的已加读锁数量是否为0, 且所述工作线程中的第一变量是否不 为0; 若是, 向所述工作线程中的第一变量对应的请求加写锁的CPU发送允许加写锁消息 。 3.一种基于轮询的高性能系统的加解写锁的方法, 其特 征在于, 所述方法包括: 在加写锁时, 判断当前CPU对应的工作线程的原子变量是否为第一 值; 若是, 将所述工作线程的原子变量设置为第 二值, 并通过发送消息将所有线程的第 一变量设 置为所述工作线程的编号; 判断所述工作线程中的第二变量是否等于所有线程数量, 其中, 所述第二变量表示已 收到允许加写锁的线程数量; 若是, 所述工作线程加写锁成功。 4.如权利要求3所述的基于轮询的高性 能系统的加解写锁的方法, 其特征在于, 所述通 过发送消息将所有 线程的第一变量设置为所述工作线程的编号, 包括: 将所述工作线程中的第 一变量设置为所述工作线程的编号, 并发送请求加写锁消息给 其他线程; 以及 将所述其它线程中的第一变量设置为所述工作线程的编号。 5.如权利要求4所述的基于轮询的高性 能系统的加解写锁的方法, 其特征在于, 所述方 法还包括: 判断所述 其他线程的已加读锁数量是否为0; 若是, 将所述工作线程中的第二变量加1; 若否, 等待所述 其他线程解读锁。 6.如权利要求3所述的基于轮询的高性 能系统的加解写锁的方法, 其特征在于, 所述方 法还包括: 在解写锁时, 将所述工作线程中的第 一变量和第 二变量均设置为0, 并向所述其它线程 发送请求解写锁消息将所述其它线程中的第一变量设置为0, 并将所述原子变量设为第一 值, 触发对应线程的加写锁重试或加读锁重试。 7.一种基于轮询的高性能系统的加解读锁的装置, 其特 征在于, 所述装置包括: 判断模块, 用于在加读锁时, 判断当前CPU对应的工作线程中的第一变量是否为第一 值; 加读锁模块, 用于供所述工作线程不存在加写锁的请求, 所述工作线程加读锁成功, 并 将所述工作线程中的已加读锁数量加1; 以及 等待模块, 用于供 所述工作线程存在加写锁的请求, 等待所述工作线程 解写锁。权 利 要 求 书 1/2 页 2 CN 115202884 A 28.一种基于轮询的高性能系统的加解写锁的装置, 其特 征在于, 所述装置包括: 判断模块, 用于在加写锁时, 判断当前CPU对应的工作线程的原子变量是否为第一值; 以及 加写锁模块, 用于将所述工作线程的原子变量设置为第二值, 并通过发送消息将所有 线程的第一变量设置为所述工作线程的编号; 判断所述工作线程中的第二变量是否等于所 有线程数量, 其中, 所述第二变量表示已收到允许加写锁的线程数量; 若是, 所述工作线程 加写锁成功。 9.一种电子设备, 其特 征在于, 包括: 至少一个处 理器; 以及 存储器, 所述存储器存储指令, 当所述指令被所述至少一个处理器执行时, 使得所述至 少一个处理器执行如权利要求1至6中任一项所述的基于轮询的高性能系统的加 解读写锁 的方法。 10.一种计算机可读存储介质, 其特征在于, 所述计算机可读存储介质上存储有计算机 程序, 所述计算机程序被处理器执行时实现如权利要求 1至6任一项 所述的基于轮询的高性 能系统的加解读写锁的方法的步骤。权 利 要 求 书 2/2 页 3 CN 115202884 A 3

.PDF文档 专利 基于轮询的高性能系统的加解读写锁的方法及应用

文档预览
中文文档 20 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共20页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 基于轮询的高性能系统的加解读写锁的方法及应用 第 1 页 专利 基于轮询的高性能系统的加解读写锁的方法及应用 第 2 页 专利 基于轮询的高性能系统的加解读写锁的方法及应用 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 13:13:17上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。