转自:http://blog.csdn.net/tonytfjing/article/details/44278233 JVM结构、内存分配、垃圾回收算法、垃圾收集器。下面我们一一来看。 一、JVM结构 根据《java虚拟机规范》规定,JVM的基本结构一般如下图所示: 从左图可知,JVM主要包括四个 ...
分类:
其他好文 时间:
2017-10-31 19:58:43
阅读次数:
207
直接内存(Direct Memory)并不是虚拟机运行时数据区的一部分,也不是Java虚拟机规范中定义的内存区域,但是这部分内存也被频繁地使用,而且也可能导致OutOfMemoryError异常出现,所以我们放到这里一起讲解。 在JDK 1.4中新加入了NIO(New Input/Output)类, ...
分类:
其他好文 时间:
2017-10-15 14:20:44
阅读次数:
287
最近因项目存在内存泄漏,故进行大规模的JVM性能调优 , 现把经验做一记录。 一、JVM内存模型及垃圾收集算法 1.根据Java虚拟机规范,JVM将内存划分为: New(年轻代) Tenured(年老代) 永久代(Perm) 其中New和Tenured属于堆内存,堆内存会从JVM启动参数(-Xmx: ...
分类:
其他好文 时间:
2017-10-12 20:19:32
阅读次数:
118
最全、最完整的JAVA7运行时数据区图解,每个部分均包含简要说明,组成部分包括:线程共享区域方法区、运行时常量池、JAVA堆、直接内存线程私有区域PC寄存器、本地方法栈、JVM栈【栈志局部变量表、操作数栈、动态链接、异常分派表】】参考书目:《Java虚拟机规范(JavaSE7中文版)..
分类:
编程语言 时间:
2017-10-11 00:39:31
阅读次数:
148
一、什么是Java内存模型 Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽掉各种硬件和操作系统的访问差异,以实现让Java程序在各种平台下都能达到一致的内存访问效果。在此之前,主流程序语言(如C/C++等)直接使用物理硬件和操作系统的内存模型,因 ...
分类:
编程语言 时间:
2017-09-15 19:07:37
阅读次数:
205
java有8中数据类型: 关于float和double的范围和精度问题可以参看这篇文章以及这篇文章 为什么boolean的长度既可以是1字节也可以是4字节呢? 理由来源是《Java虚拟机规范》一书中的描述:“虽然定义了boolean这种数据类型,但是只对它提供了非常有限的支持。在Java虚拟机中没有 ...
分类:
编程语言 时间:
2017-09-14 21:53:32
阅读次数:
274
转自:http://blog.csdn.net/lifuxiangcaohui/article/details/37992725 最近因项目存在内存泄漏,故进行大规模的JVM性能调优 , 现把经验做一记录。 一、JVM内存模型及垃圾收集算法 1.根据Java虚拟机规范,JVM将内存划分为: New( ...
分类:
其他好文 时间:
2017-09-09 16:30:01
阅读次数:
224
Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范(第2版)》的规定,Java虚拟机所管理的内存将会包括以下 ...
分类:
其他好文 时间:
2017-09-08 18:27:33
阅读次数:
197
JVM性能调优: JVM内存模型及垃圾收集算法 1.根据Java虚拟机规范,JVM将内存划分为: New(年轻代) Tenured(年老代) 永久代(Perm) 其中New和Tenured属于堆内存,堆内存会从JVM启动参数(-Xmx:3G)指定的内存中分配,Perm不属于堆内存,有虚拟机直接分配, ...
分类:
其他好文 时间:
2017-09-02 12:55:53
阅读次数:
184
第一个要说的就是Garbage First,请问啥叫Garbage First?尼玛都是Garbage了,还first,second,我不是针对谁,在座的各位都是垃圾!!! HotSpotWTF,热壶?我他奶奶的还热火呢,Heat,you know?总之HotSpot是一种遵循java虚拟机规范的一... ...
分类:
编程语言 时间:
2017-08-30 21:44:51
阅读次数:
209