Parallel Old收集器是JAVA虚拟机中垃圾收集器的一种。和Serial Old收集器一样,工作在JAV虚拟机的老年代。这种垃圾收集器使用多线程和“标记-整理”算法。它在JDK
1.6中才开始提供。
在注重吞吐量及CPU资源敏感的场合,都可以优先考虑Parallel Scavenge加Parallel
Old收集器。
1、运行代码
package com.gc;
im...
分类:
编程语言 时间:
2015-01-19 17:20:48
阅读次数:
668
1、特点
CMS收集器是JAVA虚拟机中垃圾收集器的一种。它运行在JAVA虚拟机的老年代中。CMS是(Concurrent
MarkSweep)的首字母缩写。CMS收集器是一种以获取最短回收停顿时间为目标的收集器。比较适用于互联网等场合,可能是互联网中最重要的收集器模式;
2、优点
由于整个过程中耗时最长的并发标记和并发清除过程中,收集器线程都可以与用户线程一起工作,所以总体上来说,CM...
分类:
编程语言 时间:
2015-01-19 17:19:50
阅读次数:
236
1、垃圾收集器的组合
JAVA垃圾收集器一共有7个,减去还没有正式大规模使用的G1,还有6个,其中新生代3个,老生代3个。
因为垃圾收集器都是一组一组的工作,这6个收集器一共构成了5中使用模式。
参数
描述
-XX:+UseSerialGC
Jvm运行在Client模式下的默认值,打开此开关后,使用Serial + Serial Old的...
分类:
编程语言 时间:
2015-01-19 15:55:08
阅读次数:
242
1、特点
ParNew收集器是JAVA虚拟机中垃圾收集器的一种。它是Serial收集器的多线程版本,除了使用多条线程进行垃圾收集之外,其余行为包括Serial收集器可用的所有控制参数(例如:-XX:SurvivorRatio、-XX:PretenureSizeThreshold、-XX:HandlePromotionFailure等)、收集算法、Stop
The World、对象分配规则、回...
分类:
编程语言 时间:
2015-01-19 14:26:11
阅读次数:
341
1、特点
Serial收集器是JAVA虚拟机中最基本、历史最悠久的收集器,在JDK 1.3.1之前是JAVA虚拟机新生代收集的唯一选择。Serial收集器是一个单线程的收集器,但它的“单线程”的意义并不仅仅是说明它只会使用一个CPU或一条收集线程去完成垃圾收集工作,更重要的是在它进行垃圾收集时,必须暂停其他所有的工作线程,直到它收集结束。
要是服务器每运行一个小时就会暂停5分钟,老板会有什么样...
分类:
编程语言 时间:
2015-01-19 14:25:59
阅读次数:
246
Parallel Scavenge收集器是JAVA虚拟机中垃圾收集器的一种。和ParNew收集器类似,是一个新生代收集器。使用复制算法的并行多线程收集器。
1、特点
Parallel Scavenge收集器的关注点与其他收集器不同, ParallelScavenge收集器的目标则是达到一个可控制的吞吐量(Throughput)。所谓吞吐量就是CPU用于运行用户代码的时间与CPU总消耗时间的比值...
分类:
编程语言 时间:
2015-01-19 14:25:01
阅读次数:
312
万法唯心造:现实世界中一切都可归结为对象,而对象不过就是new一下,构造函数既可为你于内存中打造,64位后,内存理论无限大,概括:世间万殊,总归内存一条。一切皆幻:无论多牛逼的object,不过是内存中一堆0,1,最终还是要被析构函数或垃圾收集器消灭。五蕴:机器只不过是一堆破铜烂铁的组合而已,CPU...
分类:
其他好文 时间:
2015-01-11 12:12:08
阅读次数:
164
因为以前用默认的GC,,老年代经常在占比超过99%才发生一个GC行为,感觉不爽。。。尽管每次FULL GC只要0.5S。结合上次听中华构架师大会,一哥们分享的G1 GC。。。试试。。就在TOMCAT的catania.sh里JAVA的启动参数加一段吧。。JAVA_OPTS=' -Xms512m -Xm...
分类:
其他好文 时间:
2015-01-09 12:04:58
阅读次数:
272
(此话题将不断更新,请留意)第一,谈谈final, finally, finalize的差别。 final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。finally是异常处理语句结构的一部分,表示总是运行。finalize是 Object类的一个方法,在垃圾收集器运行的....
分类:
编程语言 时间:
2014-12-31 21:22:33
阅读次数:
385
上面这个程序创建了许多Chair对象,而且在垃圾收集器开始运行后的某些时候,程序会停止创建Chair。由于垃圾收集器可能在任何时间运行,所以我们不能准确知道它在何时启动。因此,程序用一个名为gcrun的标记来指出垃圾收集器是否已经开始运行。利用第二个标记f,Chair可告诉main()它应停止对象....
分类:
编程语言 时间:
2014-12-23 15:24:36
阅读次数:
137