亚信安慧AntDB:AntDB-M元数据锁之锁的获取(三)

5 锁的获取

5.1 锁的强弱

当线程已经持有的锁比新申请的锁更强时,认为已经持有了锁,无需再对申请锁类型加锁。锁的强弱指持有的锁与其他锁的不兼容集合大小,集合相同锁相同,集合更大锁更强,否则无强弱关系。通过锁的兼容位图进行简单的位运算即可快速判断锁的强弱。

5.2 两种锁范围

按照锁的适用范围将锁划分为两类,当然划分不是非此即彼的,会有重叠,这两类锁有各自的兼容性和锁对象管理方式。

范围锁(scoped locks)

只有三种锁(IX,S,X),主要用于GLOBAL、COMMIT、TABLESPACE、BACKUP_LOCK命名空间的对象。这几种命名空间的锁主要从整体上去限制并发操作,比如在DML访问一张表时,会先申请一个该表所属SCHEMA的IX锁,避免访问过程中该SCHEMA被修改、删除。范围锁全局每种命名空间都仅有一个锁对象,从而实现全局性的并发控制。

相关推荐
少控科技13 小时前
农场设备管理代码(2)
开发语言·c#
福大大架构师每日一题14 小时前
Redis 8.10.0 正式发布:紧凑哈希、批量导入、备份恢复、流与时序能力全面升级
数据库·redis·哈希算法
周GZ14 小时前
简单讲解Java中静态方法与 实例方法
java·开发语言
疯狂打码的少年14 小时前
【数据结构】树的基本概念与二叉树定义
java·数据结构·笔记·算法
雨晨源码(同名B站)14 小时前
基于深度学习YoloV11农业病害虫害检测系统 智慧农业信息化综合管理平台 (附源码+lw文档+ppt)
数据库·人工智能·深度学习·yolo·信息可视化
盗理者15 小时前
AI Agent 技能分享|SQL 性能诊断与优化
java·sql·spring·skill
GitLqr15 小时前
Java 26 终于原生支持 HTTP/3 了:告别 Netty,直接用 QUIC
java·netty·http3
用户409666013175115 小时前
Jackson 序列化:@JsonIgnore / @JsonProperty / @JsonFormat / @JsonInclude / @JsonUnwrapped 一次讲清楚
java·后端
码路漫漫15 小时前
用了 Caffeine,消息为什么还是被处理了两次?
java
DBA小马哥15 小时前
向量数据库入门到进阶:Embedding、ANN算法与RAG落地的关键术语
数据库·算法·embedding