JAVA - 垃圾回收 GC ( Garbage Collector ) & GC tuning

目标: 熟悉GC常用算法, 熟悉常见垃圾收集器, 具有实际JVM调优实战经验

什么是垃圾 garbage?

没有被对象引用的对象, 就是垃圾对象

Java VS C++

Java

GC处理垃圾

开发效率高, 执行效率低 ( 总体来看, 多花了一步操作, 去遍历和确认垃圾 )

C++

手工处理垃圾, 比较精确, 所以高效 ( 不需要花时间去扫描和确定谁是垃圾 )

忘记回收 -> 内存泄露

回收多次 -> 非法访问

开发效率低, 执行效率高

How to find a garbage

引用计数 reference count

引用计数法不能解决的问题: 循环引用

这三个对象引用计数都是1, 最后没有被清理

但是没有其他引用用到这三个对象, 会一直占用内存, 按理应该被清理掉


Root Searching 根可达算法

解决引用计数法无法解决的循环引用问题

哪些对象属于GC roots

线程栈变量JVM stack: main方法会起一个线程, 并且可能会启动多个子线程, 这些线程都会有自己的线程栈stack, 这些个栈帧里存的就是"线程栈变量"

静态变量: static references in method area

常量池 ( runtime constant pool ) : string/int常量池, static final int a=5这种

JNI指针: native method stack

GC Algorithms

Mark-Sweep

切换GC算法的组合参数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SIS解压打包工具 sis编辑工具 软件:siscontents 版本:1.2.5 build 43 作者:Aquarius http://symbiandev.cdtools.net 汉化:segalgx 日期:2009-5-4 http://www.cnpda.com.cn/forum-7-1.html http://mobile.0110.cn/forumdisplay.php?fid=39 一款PC上打包解包修改S60第三版sis软件,主题的PC工具,支持拖放,支持从文件夹创建新的sis文件,支持创建主题,支持命令行批量解包文件!!强烈推荐!!! 压缩包中含有leftup、binpda的证书签名方案!附件已经包含plugins插件,解包文件时,可执行文件(exe,dll等)会自动脱壳,方便修改(汉化)!! 功能: 1、支持解包打包S60第3版sis(x)文件,支持单独解压其中任意一个文件,支持拖放操作 2、编辑mif文件,删除,新增,保存,替换里面的图片 3、支持查看解压ngage游戏 4、支持查看修改exe,dll的权限 5、支持编辑sis,替换、新增、删除组件,重新打包 ,支持从文件夹创建新sis文件 5、导出pkg文件(支持中文) 6、识别带If,else语句的sis,解包出不同的源文件 7、查看文件是否已签名,查看证书信息,去掉签名 8、修改软件UID3和SID 9、支持软件签名 10、支持拖放操作 11、支持查看解包mbm文件里面的图片 12、支持打包主题,修改主题安装包信息 更新历史: ==1.2.5 build 43更新(2009-5-4) 1、增加附加组件编辑功能(?) 2、修改skn文件属性时改变了安装路径,软件会自动其他文件的路径 ==1.2.1 build 41更新(2009-4-12) 1、修正更新文件目标文件与源文件内容一致时出现的bug 2、新建文件增加兼容安装平台修正对话框 3、新增检查程序包含文件名称中的无效字符 ==1.2.0 build 40更新(2009-4-11) 1、新增支持编辑软件的可选安装选项 2、新增支持添加sis组件选项:选择是否检查手机已经安装了该组件,再决定是否安装该组件 3、新增支持新建mif文件:新建一0字节mif文件,添加到软件中,然后可以添加svg图片 ==1.1.6 build 37更新(2009-3-24) 1、增加AllowDuplicateFiles参数,设为1时,增强sis文件在Symbian 9.1系统平台安装的兼容性 2、其他Bug修正(?) ==1.1.5 build 36更新(2009-3-8)== 1、支持打包主题,修改主题信息 2、修正签名时,RSA 密匙长度超过1024时的bug ==1.1.0 build 35更新== 1、支持从文件夹创建新sis(x)文件 2、支持命令行批量解包sis文件 3、修正解包n-gage文件的bug 4、支持拖放操作(包括打开sis文件,解包文件) 5、其他bug修正 ==1.0.5 build 31更新== 1、支持mbm文件图片解包 ==1.0.3 build30更新== 1、支持修改可执行文件UID3和SID(方便制作共存版) 2、支持对软件签名(可以建立多种方案,对应不同的证书文件) 3、对unicode支持更好 ==0.9.6 build27更新== 1、新建sis安装文件 2、编辑mif文件(增加、替换、删除mif的图片) 3、修复0.9.5的bug

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值