首页 > 代码库 > Java垃圾回收机制
Java垃圾回收机制
Java平台通过垃圾回收器(GC)进行自动的内存管理,主要负责完成3个任务:分配内存、确保被引用对象的内存不被错误回收,以及回收不再被引用对象的内存空间。一般情况下,当垃圾回收器在进行回收操作时,整个应用的执行暂时中止。因为垃圾回收器要更新应用中所有对象引用的实际内存地址。不同硬件平台所支持的垃圾回收方式也不同。
垃圾回收机制最基本做法是分代回收。内存被划分成不同的世代(年轻、年老、永久),对象根据其存活时间被保存在对应世代区域中,且不同世代垃圾回收算法不一。内存分配发生在年轻世代。当一个对象存活时间够长,就被复制到年老世代。
Java提供3种垃圾回收机制:
串行回收方式:使用单个CPU回收年轻和年老世代的内存,适合于一般的单CPU桌面平台。在垃圾回收过程中,应用程序被暂时中止。回收方式使用的是分代回收。
并行回收方式:用这种方式对年轻世代进行回收时,会使用多个CPU并行处理,提升回收性能。了;
并行标记——清除回收方式:可以在应用运行的同时标记存活对象与回收垃圾,只需较短时间中止应用,适合于对应用的响应时间要求比较高的情况。
Java垃圾回收机制
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。