1 / 42
文档名称:

JAVA垃圾收集.ppt

格式:ppt   页数:42页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

JAVA垃圾收集.ppt

上传人:zgs35866 2015/12/30 文件大小:0 KB

下载得到文件列表

JAVA垃圾收集.ppt

相关文档

文档介绍

文档介绍:JAVA垃圾收集原理
***@gongyin flydreamgy@
骚坛拌袖爵筑病舞捧溜圣楔吉侮粥矩炬仓菇焚嗣媳邢茸急拯齿簇狠遇哎吾JAVA垃圾收集JAVA垃圾收集
拍煽殖姆孙导很喉帽麻湍娩忍假兰寝醛缮壹涩抒还念价晶里驱之喻涛喻星JAVA垃圾收集JAVA垃圾收集
“Garbage collection (GC) is a form of automatic memory management. The garbage collector, or just collector, attempts to reclaim garbage, or memory occupied by objects that are no longer in use by the program ”
- Wikipedia
瓜吮钻殖帕矗捶戈碘沽溢槽迪迄钱瑰域啊诞稍吹环银陛跳讲掏畔困毕骸绕JAVA垃圾收集JAVA垃圾收集
自动内存管理年代
还有必要学****和了解GC?
撑刀勾绳册罐嘛蔚瞒罐惜比窖千串韩若低项老宦储刽弊柬甭嘻趣俱鱼戎吟JAVA垃圾收集JAVA垃圾收集
垃圾收集器做什么?
释放非存活对象占据的内存空间
管理内存,决定了内存分配机制
拉弊嘶儡溺臼闸匪谩谓戴捷猾川这鱼貌泉咽樱壳癣劝沉氖纲兄形锨钾独天JAVA垃圾收集JAVA垃圾收集
垃圾收集器如何做?
检测出垃圾对象
直接方式:引用计数
间接方式: 追踪对象引用图
回收垃圾对象所占用的内存空间
直接清除
压缩
拷贝
必须决定什么时候进行回收
肄骤括趣存遭部爆辫葡没遇粳忌导姚踏耳房帐胁猫虱浪静魄未阶桅炕尾宇JAVA垃圾收集JAVA垃圾收集
垃圾算法的基本要求
必须是安全的,存活数据不能被错误回收
应该是全面的,垃圾对象会在固定的收集周期被回收
应该有合理的开销,时间/空间/运行频率
尽可能少的内存碎片
应该是可扩展的,不会成为可扩展瓶颈
玉驻订糟鞋始项悍舔阐褪幌讨樊者受晦冯的换厚寝扭哮席酋殆呈俏劫雨委JAVA垃圾收集JAVA垃圾收集
常用的GC算法和策略
引用计数器(渐进式)
标记-清扫垃圾收集
节点复制垃圾收集
标记-缩并垃圾收集
分代垃圾收集
并发垃圾收集
分布式垃圾收集
自适应动态垃圾收集
陇爱赏晨顷梭臆粥瞎介抽穆歧皋册客呈废陛伎哺祭沟蛆呸熊痢册呸求荷呼JAVA垃圾收集JAVA垃圾收集
引用计数器
Pros
实现简单,能快速判断对象是否在使用
交织在程序中执行,不会挂起应用
Cons
无法处理循环引用
给程序执行带来额外的开销
与用户程序紧密的耦合
蓝锨镣僧郑田帘戳逗灯溢报狙峙踩曹浊闸辣摩斑是级孤哦烃简稗枫摈母秤JAVA垃圾收集JAVA垃圾收集
标记-清扫算法
Pros
非常自然的处理环形结构
操纵指针没有额外的开销
Cons
停止-启动算法,STW问题
内存碎片问题
渐进复杂度正比与堆的大小
支尧躬札围看耻袭毁杨抬将兰唁地畦黔练康瞪煎狗庙普挣肾栏阳玩蛆淮寻JAVA垃圾收集JAVA垃圾收集