[发明专利]一种资源操作锁的控制方法、系统、装置及可读存储介质有效
申请号: | 202010153470.7 | 申请日: | 2020-03-06 |
公开(公告)号: | CN111367682B | 公开(公告)日: | 2022-07-08 |
发明(设计)人: | 闫冬冬;王永超;桑圣远;张东 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 刘翠香 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 资源 操作 控制 方法 系统 装置 可读 存储 介质 | ||
本申请公开了一种资源操作锁的控制方法、系统、装置及可读存储介质,包括:定义锁结构;所述锁结构包括操作锁、资源锁和资源操作锁;根据所述锁结构创建锁实例;获取所述锁结构的并发排斥规则;在所有所述锁实例中获取目标锁实例,并根据校验条件对所述目标锁实例进行可用性校验;所述校验条件包括所述并发排斥规则和所述加锁记录;若通过可用性校验,则对所述目标锁实例进行加锁并记入加锁记录;释放已加锁的所述目标锁实例并更新所述加锁记录。本申请提供了一种灵活配置的加锁机制,可对操作、资源进行组合加锁,达到资源和操作的并发控制,同时设置了并发排斥规则,防止资源并发操作导致的错乱问题,从而能够实现复杂场景的灵活配置。
技术领域
本发明涉及计算机软件领域,特别涉及一种资源操作锁的控制方法、系统、装置及可读存储介质。
背景技术
当前软件开发过程中,资源的管理以及操作越发频繁,因此带来了并发问题,在很多项目或者场景下,都需要对并发进行控制管理,主要是排斥或者允许并发。
而现有技术仅仅是基本锁的实现和应用,通常将代码作为公共资源,执行该部分代码需要申请锁,相当于所有资源都需要申请同一个锁,不满足更灵活复杂的场景需求,也无法设置不同方法之间的排斥和共享规则。
因此,如何提供一种解决上述技术问题的方案是目前本领域技术人员需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种资源操作锁的控制方法、系统、装置及可读存储介质,以达到具体的业务模块灵活配置,来满足复杂场景的需求。其具体方案如下:
一种资源操作锁的控制方法,包括:
定义锁结构;所述锁结构包括操作锁、资源锁和资源操作锁;
根据所述锁结构创建锁实例;
获取所述锁结构的并发排斥规则;
在所有所述锁实例中获取目标锁实例,并根据校验条件对所述目标锁实例进行可用性校验;所述校验条件包括所述并发排斥规则和加锁记录;
若通过可用性校验,则对所述目标锁实例进行加锁并记入所述加锁记录;
释放已加锁的所述目标锁实例并更新所述加锁记录。
优选的,所述根据所述锁结构创建锁实例之后,还包括:
将所述锁实例缓存在锁缓存池中。
优选的,所述在所有所述锁实例中获取目标锁实例的过程,具体包括:
判断所述锁缓存池的所有所述锁实例中是否存在所述目标锁实例;
若是,直接从所述锁缓存池中获取所述目标锁实例;
若否,新建所述目标锁实例并放入所述锁缓存池中,再获取所述目标锁实例。
优选的,所述对所述目标锁实例进行加锁的过程,包括:
对所述目标锁实例进行操作锁加锁、资源锁加锁或资源操作锁加锁。
优选的,所述对所述目标锁实例进行加锁并记入加锁记录的过程,具体包括:
对所述目标锁实例进行加锁并记入加锁记录,以将所述目标锁实例的状态加入下次加锁的校验条件。
优选的,所述根据校验条件对所述目标锁实例进行可用性校验的过程,具体包括:
判断所述目标锁实例是否同时满足以下条件:
所述目标锁实例符合所述并发排斥规则;
所述加锁记录中不存在所述目标锁实例,或所述加锁记录中所述目标锁实例为已释放状态;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010153470.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种人脸检测方法及装置
- 下一篇:一种幕墙拉索的张拉方法及幕墙安装结构