取决于JVM的实现:
1.停止-复制stop and copy
暂停程序运行,把所有存活对象从当前堆复制到另一个堆,复制到新堆时保持紧凑排列,没有复制的全是垃圾. 效率较低
2.标记-清扫mark and sweep
从堆栈和静态存储区出发,遍历所有引用,找出存活对象,全部标记完后,对没有标记的堆中的对象进行释放,不发生复制动作.
取决于JVM的实现:
1.停止-复制stop and copy
暂停程序运行,把所有存活对象从当前堆复制到另一个堆,复制到新堆时保持紧凑排列,没有复制的全是垃圾. 效率较低
2.标记-清扫mark and sweep
从堆栈和静态存储区出发,遍历所有引用,找出存活对象,全部标记完后,对没有标记的堆中的对象进行释放,不发生复制动作.