Ruby之父松本行弘推荐:上古传承之魔法,彻底揭垃圾回收的秘密!日本天才程序员兼LISP黑客竹内郁雄审校254幅图解,轻松掌握GC经典算法实际源码剖析,深探讨GC具体实现从门到阶,一本书掌握自动内存回收的机制!1.全面涵盖GC经典算法 标记-清除算法、引用计数法、复制算法、标记-压缩算法、保守式GC、分代GC、增量式GC、RC Immix算法,一网尽! 2.理论结合实际 在系统介绍GC算法的基础上,重解读Python、DalvikVM、Rubinius、V8等几种实用系统中的GC代码,探究GC算法的实际应用,做到了理论和实际的平衡统一。3.图文直观、讲解细致 配合大量形象的插图和代码,将各个知识掰揉碎讲解,非常适合门学习。
售 价:¥
纸质售价:¥49.50购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
审校者前言
前言
谢辞
本书评论
序章
GC的定义
GC的好处
GC的历史
为什么我们现在要学 GC
读者对象
本书中的符号
算法篇
1 学习 GC 之前
1.1 对象 / 头 / 域
1.2 指针
1.3 mutator
1.4 堆
1.5 活动对象 / 非活动对象
1.6 分配
1.7 分块
1.8 根
1.9 评价标准
2 GC 标记-清除算法
2.1 什么是 GC 标记- 清除算法
2.2 优点
2.3 缺点
2.4 多个空闲链表
2.5 BiBOP 法
2.6 位图标记
2.7 延迟清除法
3 引用计数法
3.1 引用计数的算法
3.2 优点
3.3 缺点
3.4 延迟引用计数法
3.5 Sticky 引用计数法
3.6 1 位引用计数法
3.7 部分标记 - 清除算法
4 GC 复制算法
4.1 什么是 GC 复制算法
4.2 优点
4.3 缺点
4.4 Cheney 的 GC 复制算法
4.5 近似深度优先搜索方法
4.6 多空间复制算法
5 GC 标记 - 压缩算法
5.1 什么是 GC 标记 - 压缩算法
5.2 优点
5.3 缺点
5.4 Two-Finger 算法
5.5 表格算法
5.6 ImmixGC 算法
6 保守式GC
6.1 什么是保守式GC
6.2 优点
6.3 缺点
6.4 准确式 GC
6.5 间接引用
6.6 MostlyCopyingGC
6.7 黑名单
7 分代垃圾回收
7.1 什么是分代垃圾回收
7.2 Ungar 的分代垃圾回收
7.3 优点
7.4 缺点
7.5 记录各代之间的引用的方法
7.6 多代垃圾回收
7.7 列车垃圾回收
8 增量式垃圾回收
8,1 什么是增量式垃圾回收
8.2 优点和缺点
8.3 Steele 的算法
8.4 汤浅的算法
8.5 比较各个写入屏障
9 RC Immix 算法
9.1 目的
9.2 合并型引用计数法
9.2 合并型引用计数法和 Immix 的融合
9.4 优点和缺点
实现篇
10 Python 的垃圾回收
10.1 本章前言
10.2 对象管理
10.3 Python 的内存分配器
10.4 第 0 层 通用的基础分配器
10.5 第 1 层 Python 低级内存分配器
10.6 第 2 层 Python 对象分配器
10.7 第 3 层 对象特有的分配器
10.8 引用计数法
10.9 引用的所有权
10.10 如何应对有循环引用的垃圾对象
10.11 性能调整的建议
11 DalvikVM 的垃圾回收
11.1 本章前言
11.2 重新学习mmap
11.3 DalvikVM 的源代码
11.4 DalvikVM 的 GC 算法
11.5 对象管理
11.6 标记阶段
11.7 清除阶段
11.8 Q&A
12 Rubinius 的垃圾回收
12.1 本章前言
12.2 Rubinius 的 GC 算法
12.3 对象管理
12.4 走向准确式 GC 之路
12.5 GC 复制算法
12.6 Q&A
13 V8 的垃圾回收
13.1 本章前言
13.2 V8 的 GC 算法
13.3 对象管理
13.4 通往准确式 GC 之路(V8 篇)
13.5 GC 标记 - 压缩算法
13.6 标记阶段
13.7 压缩阶段
13.8 Q&A
附录
附录 A 简单语言入门:Python 篇
附录 B 简单语言入门:Java 篇
附录 C 简单语言入门:Ruby 篇
附录 D 简单语言入门:JavaScript 篇
后记
参考文献
论文
图书
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜