摘要: 1.标记-清除 标记回收对象,清除该对象 2.复制法 将内存分为两块,每次使用其中一块,当一块使用完后,将该内存里的存活对象移到另一半里去,同时清除该块内存 3.标记整理 标记回收对象,让存活对象移动到一端,同时清除该端边界外的内存区域 4.分代收集(虚拟机的垃圾收集都采用分代收集算法) 将内存分为 阅读全文
posted @ 2020-03-30 11:05 leviH 阅读(122) 评论(0) 推荐(0)
摘要: 1.引用计数法: 给对象加一个引用计数器,每次引用这个对象,计数器加1,有一个引用失效,计数器减1,任何时候计数器为0,则判断该对象不可使用 2.可达性分析算法: 通过一系列GC roots对象作为起点向下搜索,搜索过的路劲上没有该对象的话,则判断该对象不可用 常量池也有垃圾回收,当常量池中有常量存 阅读全文
posted @ 2020-03-30 10:24 leviH 阅读(484) 评论(0) 推荐(0)
摘要: 1.类加载检查 虚拟机遇到一条new指令时执行类加载检查 2.分配内存 在类加载检查通过后,为新生对象分配内存 分配内存两种方式:2.1.指针碰撞:用过的内存内存和没用过的内存分开,中间有一个分界指针,分配内存时分界指针向没用过的内存一方移动 2.2.空闲列表:虚拟机维护一个列表,列表记录哪些内存是 阅读全文
posted @ 2020-03-30 10:12 leviH 阅读(347) 评论(0) 推荐(0)