WEB开发网
开发学院软件开发Java 从虚拟机视角谈 Java 应用性能优化 阅读

从虚拟机视角谈 Java 应用性能优化

 2010-07-15 00:00:00 来源:WEB开发网   
核心提示: 图 2. 整数加法运算 Java 栈行为查看原图(大图)此外,对于 JVM,从虚拟机视角谈 Java 应用性能优化(5),还需了解支持的数据类型和它们占用的空间:图 3. Java 数据类型查看原图(大图)按代垃圾收集机制虽然各家 JVM 的实现(Sun Hotspot、IBM J9、Oracl

图 2. 整数加法运算 Java 栈行为
从虚拟机视角谈 Java 应用性能优化

查看原图(大图)

此外,对于 JVM,还需了解支持的数据类型和它们占用的空间:

图 3. Java 数据类型
从虚拟机视角谈 Java 应用性能优化

查看原图(大图)

按代垃圾收集机制

虽然各家 JVM 的实现(Sun Hotspot、IBM J9、Oracle JRockit 等)不同,但均采用了按代的垃圾收集机制。垃圾收集就是标识出虚拟机中不被用到的垃圾对象,删除以回收空间。按代垃圾收集算法主要分为三种:

复制算法,空间被分为等大的两块,从根开始访问每一个关联的活跃对象,将空间 A 的活跃对象全部复制到空间 B,然后一次性回收整个空间 A,优点:只访问活跃对象,将所有活动对象复制走之后就清空整个空间,不用去访问死对象,所以遍历空间的成本较小,缺点:需要巨大的复制成本和较多的内存;

标记清除算法,从根开始访问所有活跃对象,标记为活跃对象。然后再遍历一次整个内存区域,把所有没有标记活跃的对象进行回收处理,优点:不需要额外的空间,缺点:较长的 GC 暂停时间,较大的扫描时间开销,产生较多的空间碎片;

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:虚拟 视角 Java

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接