文章插图
1、跟踪回收:跟踪回收的方式独立于程序,定期运行来检查垃圾,需要较长时间的中断 。
2、标记清除:标记清除的方式需要对程序的对象进行两次扫描,第一次从根(Root)开始扫描,被根引用了的对象标记为不是垃圾,不是垃圾的对象引用的对象同样标记为不是垃圾,以此递归 。所有不是垃圾的对象的引用都扫描完了之后 。就进行第二次扫描,第一次扫描中没有得到标记的对象就是垃圾了,对此进行回收 。
【垃圾回收有几种方法】3、复制收集:复制收集的方式只需要对对象进行一次扫描 。准备一个「新的空间」,从根开始,对对象进行扫 , 如果存在对这个对象的引用 , 就把它复制到「新空间中」 。一次扫描结束之后,所有存在于「新空间」的对象就是所有的非垃圾对象 。
- 如何有效的自我管理
- 一些蝙蝠物种长有沟槽的舌头
- 有望破解建文帝下落之谜
- 相同来源的精子会互助
- 英国科研团队成功教导3头灰海豹模仿人类发声 有助研究人类语言障碍
- 美国航天局称过去10年是有气象记录以来最热
- 好奇号发现火星大气中有异常多的甲烷 或证微生物存在
- 垃圾填埋场影响几公里
- 英国德文郡埃克塞特女孩发现“五叶草” 找到的机会只有2万分之1
- 绵竹市美食
