码迷,mamicode.com
首页 >  
搜索关键字:JVM 内存结构    ( 12573个结果
JVM【第十一回】:【判断对象已死之根搜索算法】
在主流的商用程序语言中(Java和C#)都是使用根搜索算法(GCRootsTracing)判断对象是否存活的。这个算法的基本思路:通过一系列的名为“GCRoots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链(ReferenceChain),当一个对象到GCRoots没有任何引用链相..
分类:其他好文   时间:2014-07-29 16:00:20    阅读次数:187
JVM【第十二回】:【Java引用】
无论通过引用计数算法判断对象的引用数量,还是通过根搜索算法判断对象的引用链是否可达,判定对象是否存活都与“引用”有关。在JDK1.2之前,Java中的引用的定义很传统:如果reference类型的数据中存储的数值代表的是另外一块内存的起始地址,就称这块内存代表着一个引用。这种..
分类:编程语言   时间:2014-07-29 15:58:33    阅读次数:221
JVM【第十三回】:【Java对象存活------finalize()方法】
在根搜索算法中不可达的对象,也并非是“非死不可”的,这个时候他们暂时处于"缓刑"阶段,要真正宣告一个对象死亡,至少要经历两次标记过程:如果对象在进行根搜索后发现没有与GCRoots相连接的引用链,那它将会被第一次标记并且进行一次筛选,筛选的条件是对象是否有必要执行fi..
分类:编程语言   时间:2014-07-29 15:43:29    阅读次数:258
JVM【第十四回】:【回收方法区】
很多人认为方法区(或者HotSpot虚拟机中的永久代)是没有垃圾收集的,Java虚拟机规范中确实说过可以不要求虚拟机在方法区实现垃圾手机,而且在方法区进行垃圾收集的“性价比”一般比较低:在堆中,尤其是在新生代中,常规应用进行一次垃圾收集一般可以回收70%~90%的空间,而永久..
分类:其他好文   时间:2014-07-29 15:42:19    阅读次数:246
Ubuntu 安装JDK
1. 下载jdk:jdk-7u65-linux-x64.tar.gz2.解压这个包,可以用软件中心中下载的7Z解压 ,也可自己输入命令解压3.把解压的包移动到 /usr/lib/jvm下 sudo mv jdk1.7.0_65 /usr/lib/jvm4.修改当前登录用户配置文件: sudo ged...
分类:其他好文   时间:2014-07-29 11:52:36    阅读次数:181
java 垃圾回收机制和调优(转)Java Garbage Collection
(转)http://www.cnblogs.com/shudonghe/p/3457990.html文主要介绍,JVM的组件,自动垃圾收集器是如何工作的,分代垃圾收集器的收集过程,使如何用Visual VM来监视应用的虚拟机,以及JVM中垃圾收集器的种类。一、JVM架构1、HotSpot 架构Hot...
分类:编程语言   时间:2014-07-29 11:49:46    阅读次数:415
Java、JVM和操作系统之间的关系,写给新人,
来张图:这个帖子写给新人的,老玩家就直接无视他,因为这个完完全全是白话基础原理。解释:上面的图是从上往下依次调用的关系。操作系统(Windows/Linux)管理硬件,让硬件能够正常、合理的运行,当然各种硬件的驱动实现了操作系统的接口,操作系统调用这些接口就能管理硬件,操作系统还像程序员提供了一层接...
分类:编程语言   时间:2014-07-28 23:52:44    阅读次数:371
JVM【第七回】:【OutOfMemoryError异常之运行时常量池溢出】
如果要向运行时常量池中添加内容,最简单的做法就是使用String.intern()这个Native方法。该方法的作用是:如果池中已经包含一个等于此String对象的字符串,则返回代表池中这个字符串的String对象;否则将此String对象包含的字符串添加到常量池中,并且返回此String对象的引用。..
分类:其他好文   时间:2014-07-28 16:44:34    阅读次数:234
JVM【第八回】:【OutOfMemoryError异常之方法区溢出】
方法区用于存放Class的相关信息,如类名、访问修饰符、常量池、字段描述、方法描述等。对于这个区域的测试,基本的思路是运行时产生大量的类去填满方法区,虽然直接使用JavaSEAPI也可以动态产生类(如反射时的GeneratedConstructorAccessor和动态代理等),在本代码中借助CGLib直..
分类:其他好文   时间:2014-07-28 16:44:04    阅读次数:281
JVM【第九回】:【OutOfMemoryError异常之本机直接内存溢出】
DirectMemory容量可通过-XX:MaxDirectMemorySize指定,如果不指定,则默认与Java堆的最大值(-Xmx指定)一样。代码中越过了DirectByteBuffer类,直接通过反射获取Unsafe实例并进行内存分配(Unsafe类的getUnsafe()方法限制了只有引导类加载器才会返回实例,也就是设计者希望只有r..
分类:其他好文   时间:2014-07-28 16:43:04    阅读次数:281
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!