[发明专利]对象更新、读取方法及装置有效

专利信息
申请号: 202111358395.9 申请日: 2021-11-17
公开(公告)号: CN113791916B 公开(公告)日: 2022-02-08
发明(设计)人: 洪春涛 申请(专利权)人: 支付宝(杭州)信息技术有限公司
主分类号: G06F9/52 分类号: G06F9/52
代理公司: 北京亿腾知识产权代理事务所(普通合伙) 11309 代理人: 张明;周良玉
地址: 310000 浙江省杭州市*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 对象 更新 读取 方法 装置
【说明书】:

本说明书实施例提供一种对象更新、读取方法及装置,在对象更新方法中,任意的第一CPU核的第一线程请求获取写锁,该写锁用于表示对第一对象执行更新的权限。读取第一指针,该第一指针指向第一对象。根据第一指针,读取第一对象并复制,得到第二对象。对第二对象的内容进行调整,得到调整后的第二对象。修改第一指针,以使其指向调整后的第二对象。释放写锁。

技术领域

本说明书一个或多个实施例涉及计算机技术领域,尤其涉及一种对象更新、读取方法及装置。

背景技术

多核处理系统能够在单位时间内处理更多的任务,处理能力更强,应用也越发广泛。在利用多核处理系统运行多线程任务时,该多个线程之间可以具有都能够操作的共享对象。并且,在更新所述的共享对象时,同一时刻只能有一个线程更新,以避免线程冲突导致数据错误。当前技术中,各个线程之间可以申请锁(Lock),成功获取到锁的线程可以操作该共享对象,未获取到锁的线程只能等待。需要说明,这里的锁通常为全局变量,从而线程申请锁的过程中通常需要进行跨CPU核通信。

发明内容

本说明书一个或多个实施例描述了一种对象更新、读取方法及装置,可以确保针对原对象的读取操作的安全性。

第一方面,提供了一种对象更新方法,包括:

任意的第一CPU核的第一线程请求获取写锁;所述写锁用于表示对所述第一对象执行更新的权限;

读取第一指针,所述第一指针指向所述第一对象;

根据所述第一指针,读取所述第一对象并复制,得到第二对象;

对所述第二对象的内容进行调整,得到调整后的第二对象;

修改所述第一指针,以使其指向所述调整后的第二对象;

释放所述写锁。

第二方面,提供了一种对象读取方法,包括:

任意的第一CPU核的第一线程读取第一指针,所述第一指针指向所述第一对象;所述第一对象具有对应的第一标志位数组,其中的每个标志位对应于一个线程;

根据所述第一指针,读取所述第一标志位数组中对应于所述第一线程的第一标志位;

将所述第一标志位的取值修改为预定值;所述预定值指示所述第一线程正在访问所述第一对象;

读取所述第一对象;

在读取所述第一对象后,将所述第一标志位的取值恢复为初始值。

第三方面,提供了一种对象更新装置,包括:

获取单元,用于请求获取写锁;所述写锁用于表示对所述第一对象执行更新的权限;

读取单元,用于读取第一指针,所述第一指针指向所述第一对象;

复制单元,用于根据所述第一指针,读取所述第一对象并复制,得到第二对象;

调整单元,用于对所述第二对象的内容进行调整,得到调整后的第二对象;

修改单元,用于修改所述第一指针,以使其指向所述调整后的第二对象;

释放单元,用于释放所述写锁。

第四方面,提供了一种对象读取装置,包括:

读取单元,用于读取第一指针,所述第一指针指向所述第一对象;所述第一对象具有对应的第一标志位数组,其中的每个标志位对应于一个线程;

所述读取单元,还用于根据所述第一指针,读取所述第一标志位数组中对应于所述第一线程的第一标志位;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202111358395.9/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top