码迷,mamicode.com
首页 >  
搜索关键字:jvm 数据区    ( 13176个结果
JVM-程序运行原理
废话不多说,直接上图: 用Excel画的一个简单JVM程序运行原理图,仅供参考,如有不对请指正。...
分类:其他好文   时间:2014-07-30 14:46:43    阅读次数:147
JAVA序列化的作用
今天看了一下项目中的action大多数都没有进行序列化,所以项目上都是一大堆警告。序列化到底有什么作用呢? 简单来说,Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反序列化,...
分类:编程语言   时间:2014-07-30 12:16:23    阅读次数:242
JAVA基础-栈与堆,static、final修饰符、内部类和Java内存分配
Java栈与堆堆:顺序随意栈:后进先出(Last-in/First-Out). Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可...
分类:编程语言   时间:2014-07-30 11:43:03    阅读次数:315
Java引用类型详解
JVM  的垃圾回收器对于不同类型的引用有不同的处理方式。 java中对于一个对象来说,只要有引用的存在,它就会一直存在于内存中。 如果这样的对象越来越多,超出了JVM中的内存总数,JVM就会抛出OutOfMemory错误。 虽然垃圾回收的具体运行是由JVM来控制的,但是开发人员仍然可以在一定程度上与垃圾 回收器进行交互,其目的在于更好的帮助垃圾回收器管理好应用的内存。这种交互方式 就是...
分类:编程语言   时间:2014-07-29 21:57:33    阅读次数:327
转: jvm调优参数总结
JVM里的GC(Garbage Collection)的算法有很多种,如标记清除收集器,压缩收集器,分代收集器等等,详见HotSpot VM GC 的种类现在比较常用的是分代收集(generational collection,也是SUN VM使用的,J2SE1.2之后引入),即将内存分为几个区域,...
分类:其他好文   时间:2014-07-29 21:05:42    阅读次数:351
C,Java和C#中典型的多线程范例都强烈推荐使用锁和互斥
C,Java和C#中典型的多线程范例都强烈推荐使用锁和互斥。对于锁来说有个隐藏的开销:它们慢得难以忍受。使用Disruptor(JVM中的无锁的环形缓存[译者注:实际上就是拥有一个序号指向下一个可用元素的数组]),你可以很容易得每秒处理20M以上的事件。
分类:编程语言   时间:2014-07-29 20:38:02    阅读次数:203
JVM【第十回】:【判断对象已死之引用计数算法】
很多教科书判断对象是否存活的算法是这样的:给对象添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,计数器值就减1;任何时刻计数器都为0的对象就是不可能再被使用。很多应届生和一些有多年工作经验的开发人员,他们对于这个问题给予的都是这个答案..
分类:其他好文   时间:2014-07-29 16:00:39    阅读次数:208
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
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!