摘要: 底层实现: sds简单动态字符串: 动态:使用内存+空闲内存; 简单:字符串封帧 通用:保存文本或二进制数据 安全:检查缓冲区溢出 链表: 顺序访问、增删 字典: key访问 hash表,链表解决冲突 负载因子出发rehash 转移成本均摊:索引计数器0-n逐个索引转移 #更细粒度:逐个key转移— 阅读全文
posted @ 2019-10-14 10:39 秦2077 阅读(86) 评论(0) 推荐(0)
摘要: 可见性 对象引用的可见性与对象域可见性不同??? 锁在保证原子性的同时保证了可见性 原子性通过引入不可分割的语义,保证了自身的执行的正确性,通过状态集不被其他线程修改。 可见性:自身的执行对状态的修改可能影响其他线程的约束。修改——可见存在延迟,可见性去除了其中的延迟。 提供可见性的状态维护了这组状 阅读全文
posted @ 2019-10-05 20:44 秦2077 阅读(87) 评论(0) 推荐(0)
摘要: 线程安全:本质上是管理 可变共享状态 的访问,线程中的所有状态都安全 //引入状态安全概念 状态安全:状态参与的不变约束、先验约束、后验约束 皆满足 //状态安全指不违背任何约束 #参与同一个约束的不同状态间不独立,所有的约束将状态分为了各个相互独立的状态集合,每个状态集合的访问都需要使用同一个锁, 阅读全文
posted @ 2019-08-29 20:34 秦2077 阅读(111) 评论(0) 推荐(0)
摘要: Java并发的学习内容主要来自《Java并发编程实战》一书,本文为一概述。 并发最简单的解释应该是不同任务的执行时间区间存在交集。由于时间上的交集+共享变量,并发会带来安全问题。 从任务的角度而言,任务的执行需要得到正确的效果;从对象的角度而言,对象需要被正确的访问。 所谓正确,或常说的线程安全,包 阅读全文
posted @ 2019-08-29 19:41 秦2077 阅读(123) 评论(0) 推荐(0)
摘要: 简单规划下博客的内容吧,主要是分享下学习心得,也算是做个笔记,一年前写过几十篇小博客,不过实在有点辣眼睛,慢慢改好搬运过来 1.程序设计语言 scala、python、go,还有《程序设计语言实践之路》的读书笔记 2.并发 主要是《Java并发编程实战》,然后补充scala跟go的并发模型,当初看p 阅读全文
posted @ 2019-08-29 18:48 秦2077 阅读(149) 评论(0) 推荐(0)