![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
文章平均质量分 74
Felix Wang
这个作者很懒,什么都没留下…
展开
-
深入JVM之Java内存模型
深入JVM之Java内存模型 所有的程序代码都必须保存在.java的文件之中,这些称为源代码。而这些源代码并不能直接执行,必须使用javac.exe命令将其编译为.class文件,而后利用java.exe命令在JVM进程之中解释此程序。 实际上当JVM将所需要的.class文件加载到JVM进程之中,那么这个过程就需要一个类加载器(ClassLoader),有了类加载器的好处在于:原创 2016-10-10 23:26:40 · 1298 阅读 · 0 评论 -
深入JVM之Java对象访问模式
深入JVM之Java对象访问模式Java的引用类型是最为重要的数据处理模型,而整个的引用数据类型数据处理之中会牵扯到:堆内存、栈内存、方法区。下面以一个最简单的程序代码为主:“Object obj=new Object()”,实例了一个Obeject类对象: ●“Object obj”:描述的是保存在栈内存之中,而保存有堆内存的引用,这个数据会保存在本地变量表中; ●“new Object()”原创 2016-10-11 23:44:50 · 647 阅读 · 0 评论 -
深入JVM之JVM垃圾收集
深入JVM之JVM垃圾收集堆内存模型Java中最大的特点在于其具备良好的垃圾收集特性,也就是GC是整个Java之中最重要的安全保障,它可以保障即使再蠢的开发者也能够写出合理的代码来。 整个JVM中的GC的处理机制:对不需要的对象进行标记,而后进行清除。 一定要记住在JDK1.8之后将最初的永久代内存空间取消了,以下为JDK1.8之前的空间组成: 取消永久代的目的:是为了将HotSpot与J原创 2016-10-18 23:42:10 · 453 阅读 · 0 评论 -
深入JVM之JVM垃圾收集策略
` 深入JVM之JVM垃圾收集策略默认使用串行GC。在年轻代使用并行GC处理的时候会产生有一个STW的暂停,在进行对象回收的时候其他的线程将被暂时性挂起。可以保证暂停的时间很短。默认使用串行GC 虽然一个人扫一栋大厦,即使现在开始10个人一起做,仍然很慢。 直白一点就是:现在一堆垃圾,标记出来这是不扔的垃圾,标记完成后把要扔的堆在一起,但是后面发现有人又往原创 2016-10-18 23:57:11 · 431 阅读 · 0 评论 -
深入JVM之G1收集器
深入JVM之G1收集器一、G1收集器简介G1收集器(JDK1.7u4正式出现) 普遍存在:全内存扫描问题。 传统的收集器不能满足高内存高cpu的要求,这才是G1产生的原因。G1区域划分 在G1之中不再区分所谓的年轻代、老年代内存空间,所有的内存空间就是一块。但是要划分出不同的子区域。二、G1收集策略虽然在G1收集器里面将整个内存区域都混合在了一起,但是其本身依然也是在小范围内要进行年轻代与老原创 2016-10-19 21:26:47 · 10515 阅读 · 0 评论 -
深入JVM之Java引用类型
深入JVM之Java引用类型引用类型可以说是整个Java开发的灵魂所在,如果没有合理的引用操作,那么就有可能产生垃圾问题,但是对于引用也需要有一些合理化的设计。在很多的时候并不是所有的对象都需要被我们一直使用,那么就需要对引用的问题做进一步的思考。从JDK1.2之后关于引用提出了四种方案: ●强引用:当内存不足的时候,JVM宁可出现OutOfMemory错误停止,也需要进行保存,并且不会将此空间回原创 2016-10-19 21:36:04 · 1764 阅读 · 0 评论