怀揣梦想,努力前行

Never forget to improve yourself.

JVM笔记7:类加载器与上级委托机制

Java中的类加载器主要有2类,一类是系统提供的,包括:启动类加载器、扩展类加载器和应用程序类加载器;另一类是由Java应用开发人员编写的自定义类加载器。启动类加载器属于JVM内部使用的类加载器,既没有上级类加载器,也没有下级类加载器,应用程序类加载器的上级是扩展类加载器,自定义类加载器的上级是应...

2013-12-15 18:33:03

阅读数 2684

评论数 2

JVM笔记6:JVM类加载机制

实在是很难弄懂啊

2013-12-06 13:59:15

阅读数 19198

评论数 2

JVM笔记5:Class文件结构

Class文件是一组以8位字节为基础单位的二进制流,包含多个数据项目(数据项目的顺序,占用的字节数均由规范定义),各个数据项目严格按照顺序紧凑的排列在Class文件中,不包含任何分隔符,使得整个Class文件中存储的内容几乎全部都是程序运行的必要数据,没有空隙。当遇到需要占用超过8位字节以上空间的...

2013-12-01 16:51:47

阅读数 11639

评论数 6

JVM笔记4:Java内存分配策略及配置参数

简单来说,对象内存分配主要是在堆中分配。但是分配的规则并不是固定的,取决于使用的收集器组合以及JVM内存相关参数的设定 以下介绍几条基本规则(使用的ParNew+Serial Old收集器组合): 一,对象优先在新生代Eden区分配 //-XX:+UseParNewGC -Xms20m -...

2013-10-29 10:00:33

阅读数 6834

评论数 0

JVM笔记3:Java垃圾收集算法与垃圾收集器

当前商业虚拟机的垃圾收集都采用“分代收集”算法,即根据对象生命周期的不同,将内存划分几块,一般为新生代和老年代,不同的代根据其特点使用最合适的垃圾收集算法 一,标记-清除算法 该算法分为“标记”、“清除”2个过程,首先标记需要清除的对象,然后统一清除 这个算法有2个明显的缺点: 1,标...

2013-10-22 09:37:17

阅读数 3305

评论数 0

JVM笔记2:对象访问

java中对不同位置创建的对象的访问方式是不同的 1,方法中创建的对象 public class Test { public void instanceObj(){ Object obj = new Object(); } ... } 1,Object obj这一部分的数据...

2013-04-30 20:39:33

阅读数 1017

评论数 0

JVM笔记1:Java内存模型及内存溢出

灰色:所有线程间共享 白色:线程间隔离   程序计数器:当前线程所执行的字节码的行号指示器,字节码解释器通过改变该计数器的值来选取下一条需要执行的字节码指令。 1,一块很小的内存空间 2,每条线程都需要一个独立的计数器(java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式实现的,为了...

2013-04-26 11:34:39

阅读数 2239

评论数 0

Java jvisualvm简要说明

jvisualvm能干什么:监控内存泄露,跟踪垃圾回收,执行时内存、cpu分析,线程分析...   jvisualvm已经被集成在jdk1.6以上的版本中(不是jre)。自身运行需要最低jdk1.6版本,但是可以监控运行在jdk1.4以上版本的java程序 以jdk1.6update45(j...

2012-12-27 08:53:37

阅读数 43486

评论数 7

提示
确定要删除当前文章?
取消 删除
关闭
关闭