摘要: 产生GC日志的参数 -XX:+PrintGCDetails GC日志格式 GC和Full GC是指回收的停顿类型,Full GC说明发生了“Stop The World”。 “[DefNew”、“[Tenured”、“[ParmNew”、“[PSYoungGen”表示GC发生的区域此名称和使用的GC 阅读全文
posted @ 2017-09-30 15:45 BINGJJFLY 阅读(443) 评论(0) 推荐(0) 编辑
摘要: 堆内存结构 引言 垃圾收集器就是垃圾收集算法的具体实现。HotSpot7种不同分代的收集器彼此之间可能搭配使用。 Serial收集器 该收集器是单线程收集器即串行收集器,并不是说它只使用一条收集线程,而是说它收集垃圾时必须停掉其他的工作线程直到收集结束。 优点是简单高效停掉其他线程没有线程交互的开销 阅读全文
posted @ 2017-09-30 10:02 BINGJJFLY 阅读(348) 评论(0) 推荐(0) 编辑
摘要: 引言 判断对象是否被回收的算法有引用计数算法和可达性分析算法。其中可达性分析算法是根据GC Roots根节点作为起始点向下搜索引用链,找不到引用链则判定对象可回收。 可作为GC Roots根节点的对象主要是在全局性的引用(如常量、类静态属性)和执行上下文中(如栈帧中的本地变量表),现在的很多应用仅方 阅读全文
posted @ 2017-09-29 17:47 BINGJJFLY 阅读(1601) 评论(0) 推荐(0) 编辑
摘要: GC回收垃圾对象需要完成的三件事 1、哪些内存需要回收? 2、如何判断对象是否该回收? 3、如何回收垃圾对象? 哪些内存需要回收 程序计数器、虚拟机栈、本地方法栈三个区域随线程而生随线程而灭。虚拟机栈中的栈帧随着方法的开始和结束对应着入栈和出栈。每一个栈帧需分配内存的大小在类结构确定下来时就已知了。 阅读全文
posted @ 2017-09-29 13:42 BINGJJFLY 阅读(680) 评论(0) 推荐(0) 编辑
摘要: 参考:http://cn-done.iteye.com/blog/2041971 输出结果 阅读全文
posted @ 2017-09-29 11:54 BINGJJFLY 阅读(6208) 评论(0) 推荐(0) 编辑
摘要: JVM参数 -Xms:初始堆大小,默认为物理内存的1/64(<1GB),默认空余堆内存(MinHeapFreeRatio)小于40%时 JVM就会增大堆大小直到-Xmx的最大限制。 -Xmx:最大堆大小,默认空余堆内存(MaxHeapFreeRatio)大于70%时JVM会减少堆大小直到 -Xms的 阅读全文
posted @ 2017-09-28 17:35 BINGJJFLY 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 对象的创建 当虚拟机遇到一条new指令时,首先检查这条指令的参数能否在常量池中定位到一个类的符号引用,并检查这个符号引用代表的类是否被加载、解析和初始化过,没有的话必须去执行相应的类加载过程。 类加载检查通过后,Java虚拟机为对象实例分配内存。对象所需的内存大小在类加载完成后就已经确定了。 如何分 阅读全文
posted @ 2017-09-28 15:34 BINGJJFLY 阅读(1679) 评论(0) 推荐(0) 编辑
摘要: 引言 JVM执行Java程序时会将它所管理的内存划分为不同的数据区域。各数据区域的生命周期也各不相同,有的随着JVM的启动而创建,有的根据用户的线程的启动和结束而创建和销毁。 程序计数器 程序计数器是一块较小的内存空间,可以看做是当前线程所执行的字节码的行号指示器。字节码解释器就是通过改变这个计数器 阅读全文
posted @ 2017-09-28 13:21 BINGJJFLY 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 引言 Java语言不要求常量一定要在编译期才能产生,也就是并非预置入Class文件中常量池的内容才能进入方法区的运行时常量池,程序运行期间也可以将常量放入池中。 设计字符串常量池的原因 字符串在java程序中被大量使用,为了避免每次都创建相同的字符串对象及内存分配,JVM内部对字符串对象的创建做了一 阅读全文
posted @ 2017-09-28 11:38 BINGJJFLY 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 环境说明 操作系统:CentOS 6.8 OpenJDK:openjdk7u BootstrapJDK:jdk1.7 安装Bootstrap JDK(如果需要的话,但是测试时尽量不用1.8) 因为OpenJDK各个组成部分有的是C、C++编写的,但更多的是Java自身实现的,所以需要一个Oracle 阅读全文
posted @ 2017-09-27 14:46 BINGJJFLY 阅读(861) 评论(0) 推荐(0) 编辑