摘要: |题目|难度|要点| | | | | |拼车|●|不需要构造原始数组,直接判断即可| |航班预定统计|●|构造原始数组| |区间加法|●|构造原始数组| 差分数组中,diff[i] 就是 nums[i] 和 nums[i-1] 之差;diff[0] = nums[0]; 拼车 class Solut 阅读全文
posted @ 2023-03-13 23:35 kiper 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 原子性 原子性:一个或多个操作在CPU执行的过程中不被中断的特性 原子性问题源头是线程切换,保证对共享变量的修改时互斥的,就可以保障原子性。 简易锁模型 临界区:一段需要互斥执行的代码 改进锁模型 明确锁的范围,能够锁住的资源。 简易锁模型容易出问题的地方: 1、锁住了错误的资源 2、锁的粒度太大, 阅读全文
posted @ 2023-03-13 18:17 kiper 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 单线程:指redis网络IO和键值对读写。Redis 的其他功能,比如持久化、异步删除、集群数据同步等,其实是由额外的线程执行的。 采用单线程原因 多线程会有共享资源竞争带来的额外开销,如锁。为了避免竞争,采用了单线程。 redis快的原因 内存 内存操作比磁盘快 数据结构 高效的数据结构,参考Re 阅读全文
posted @ 2023-03-13 17:10 kiper 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 目录1. 全局锁1.1 使用场景1.2 readonly和FTWRL区别2. 表级锁2.1 表级锁类型2.1.1 表锁2.1.2 元数据锁(MDL)2.1.3 意向锁2.1.4 自增锁2.2 如何安全地给表新增字段2.2.1 新增字段阻塞场景2.2.2 新增字段安全方案2.2.2.1 方案2.2.2 阅读全文
posted @ 2023-03-13 09:51 kiper 阅读(96) 评论(0) 推荐(1) 编辑