摘要: GC基本技术实现 GC就是Mark和Sweep,第一步标记活的节点,第二步清除死的节点。 首先讲Mark Mark mark怎么做呢?首先每个Runtime都会有Roots对象,运行时的创建对象也会跟Roots挂上关系。 所以我们从Roots标记就可以了。 伪代码: worklist = Roots 阅读全文
posted @ 2020-12-10 15:41 xuyv 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 选择排序 选择排序是最基本的排序算法。比较像冒泡排序,但是冒泡排序在已经排序的情况下(设置flag跳出循环),只需要O(N),但是选择排序需要O(N2) 基本思想: 遍历,寻找数组中最小的元素,然后放到数组最前面。 递归这个过程。 复杂度: O(N^2) 插入排序 选择排序的改进。可以看到选择排序每 阅读全文
posted @ 2020-12-10 15:21 xuyv 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 很简单但是容易懂的一篇介绍,跟trash talk一样简单直接。。。(介绍文章的标题就是trash talk) https://v8.dev/blog/trash-talk 介绍几个GC里面的重要概念。下面的几种GC都是为了提升GC性能。 * 并行GC Parallel 顾名思义,把GC这个过程,分 阅读全文
posted @ 2020-12-10 11:49 xuyv 阅读(172) 评论(0) 推荐(0) 编辑