简答题
1、描述引用计数的工作原理和优缺点。
工作原理:核心思想设置引用数,判断当前引用数是否为0;实现方式通过设置引用计数器,并根据引用关系变化时修改引用数字,当引用数字为0时GC就会立即工作将当前的对象的空间进行回收;
优点:发现垃圾即时回收、最大限度减少程序暂停。
缺点:时间开销大、无法回收循环引用的对象。
2、描述标记整理算法的工作流程。
第一阶段:标记阶段将作用域中所有的可达对象进行标记,标记阶段的操作和标记清除一致;
第二阶段:清除阶段会先进行整理,移动对象位置,让它们在地址上产生连续,然后进行清除操作;
3、描述V8中新生代存储区垃圾回收的流程。
回收过程采用复制算法和标记整理算法操作,首先它会将新生代存储区划分为两个等大小的空间:使用空间From、空闲空间To。活动对象放置在From空间内,当From空间使用到一个程度后便会触发GC操作这时候,第一步,会采用标记整理的操作来对From空间进行活动对象的标记。找到这些对象后,会继续进行整理的操作;第二步、将标记的活动对象拷贝至To空间;第三步、对From空间进行回收操作;第四步、将From空间与To空间进行置换;

4、描述增量标记算法在何时使用及工作原理。
增量标记是在老生代对象回收中进行效率优化的一个操作。因为当进行垃圾回收操作的时候会阻塞程序的执行,所以在老生代中会在程序执行的空档期执行回收操作。所谓的增量标记指的是将当前一整段的垃圾回收操作,分成多个小步组合着去完成。实现垃圾回收与程序执行交替完成。