最新文章列表

JVM的垃圾回收之垃圾的界定----哪些对象的内存需要回收

        JVM对内存的回收依赖于“死去”的对象,所以在对内存回收之前,第一件事就是确认哪些对象还“活着”,哪些对象已“死去”(即不可能再被任何途径使用的对象)。   1.引用计数法       很多教科书判断对象是否存活的算法是这样的:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1 ;当引用失效时,计数器值就减1 ;任何时刻计数器都为0 的对象就是不可能再被 ...
zhdkn 评论(0) 有1334人浏览 2012-07-31 08:27

Java GC的过程

一.如何判断对象“已死”,目前主要有两种主流的算法 1.引用计数算法 给对象中添加一个引用计数器,每当有一个地方引用它时,计数器就+1,当引用失效时,计数器就-1,任何时候,计数器为0的对象就是不可能再被使用的。但是这种算法很难解决对象间互相循环引用的问题: A a = new A(); A b = new A(); b.instance = a; a.instance ...
wangwengcn 评论(1) 有1764人浏览 2012-07-24 20:09

jstat 详解

jstat        1. jstat -gc pid             可以显示gc的信息,查看gc的次数,及时间。             其中最后五项,分别是young gc的次数,young gc的时间,full gc的次数,full gc的时间,gc的总时间。       2.jstat -gccapacity pid             可以显示,VM内存中三代(young ...
lvbolvtian 评论(0) 有640人浏览 2012-07-24 10:02

一步步优化JVM四:决定Java堆的大小和内存占用

   排版太难看了,另外在CSDN上写了:http://blog.csdn.net/zhoutao19872/article/details/7771962     到目前为止,还没有做明确的优化工作。只是做了初始化选择工作,比如说:JVM部署模型、JVM运行环境、收集哪些垃圾回收器的信息以及需要遵守垃圾回收原则。这一步将介绍如何评估应用需要的内存大小以及Java堆大小。首先需要判断出应用存活的数 ...
ganlv 评论(0) 有6154人浏览 2012-07-22 10:35

动态内存管理学习

这方面的资料非常丰富,先准备看看下面这些东西。   入门级导读:   内存管理内幕 具体解决方案文章: dlmalloc这个可以在网上找到很多,可以结合ptmalloc学习 ptmalloc2源码分析 LLVM -> vmkit -> MMTk (GC) 理论文章: 《垃圾收集》 上面就足够学习很长时间了,先列上来慢慢看 ...
qianjigui 评论(0) 有901人浏览 2012-07-13 14:16

JVM学习笔记(三):JVM的垃圾回收

注:本文根据《深入理解Java虚拟机》第3章部分内容整理而成。     一.如何判断对象是否需要回收?   堆中几乎放着java世界中的所有的对象实例,垃圾收集器在对堆进行回收前,第一件事就是要确定这些对象哪些还“存活”着,哪些已经“死去”(即不可能再被任何途径使用的对象)。而如何判断对象是否应该回收,存在两个算法:引用计数算法(Reference Counting)和根搜索算法(GC ...
chenzhou123520 评论(0) 有4192人浏览 2012-07-12 21:06

虚拟机垃圾收集学习准备

准备再认真学习GC相关的知识,现考虑学习: 内存分配策略(这里主要是指对于堆的内存分配管理) 主要考虑原则:吞吐量、碎片率 通用策略:操作系统教科书上有涉及 最先匹配 最优匹配 伙伴系统 等等 linux-libc现行实现: ptmalloc(fastbin:考虑到了换页) dlmalloc(无fastbin) GC理论:图书:Garbage Colle ...
qianjigui 评论(0) 有872人浏览 2012-07-10 18:48

JVM-GC实践总结(纠正并发线程数 转载)

首先感谢阿宝同学的帮助,我才对这个gc算法的调整有了一定的认识,而不是停留在过去仅仅了解的阶段。在读过sun的文档和跟阿宝讨论之后,做个小小 ...
pany 评论(1) 有3547人浏览 2012-07-10 16:27

java gc过程

package SRC; /*如果一个对象在根搜索后发现没有与GC Roots相连接,那它会被第一次标记,同时被筛选, * 筛选的条件是此对象是否有必要指向finalize()方法。1,当对象没有重写finalize方法或 * 重写了finalize方法已经被虚拟机调用过了,虚拟机将这两种视为没有必要执行 * 重写了finalize方法的对象会被放置在F-Queue的队列中,并在稍后由一 ...
gc 
narutolby 评论(0) 有1149人浏览 2012-07-09 10:30

Java -verbose:gc 命令

  Java -verbose:gc 中参数-verbose:gc 表示输出虚拟机中GC的详细情况. 使用后输出如下: [Full GC 168K->97K(1984K), 0.0253873 secs] 解读如下:   箭头前后的数据168K和97K分别表示垃圾收集GC前后所有存活对象使用的内存容量,说明有168K-97K=71K的对象容量被回收,括号内的数据198 ...
chenzhou123520 评论(1) 有28087人浏览 2012-07-08 23:12

《实战HotSpot JVM GC》分享Slides

前阵子在QClub上海站做了一个与JVM GC优化相关的分享,大家的反响还不错,对这个话题都比较感兴趣,于是把Slides分享到了SlideShare上,希望对大家有帮助。 P.S. 没找到怎么在博客里编辑HTML的地方,嵌不了SlideShare的东西,请访问:《实战HotSpot JVM GC》  
DigitalSonic 评论(0) 有1809人浏览 2012-06-22 12:09

《java performane》第四章读书笔记

        第四章----- java performance monitoring   一, 垃圾回收机制            1,监控点:1)使用的垃圾回收策略                        2)JAVA HEAP大小                        3)年轻代与年老代,持久带空间大小                        4)minor ...
religiose 评论(0) 有697人浏览 2012-06-11 13:07

关于垃圾收集的问题

书上面说:垃圾回收,通过调用System.gc()实现?求教,怎么实现的,实现过程是什么??
wzx_dd 评论(1) 有502人浏览 2012-05-24 10:01

SWT中GC的Clipping用法

在使用SWT的GC画图的时候,你希望在画一个不规则的图形的时候,你可以使用GC的setClipping方法进行相应绘图. setClipping是结合Region来使用的. 因为Region是可以根据描点,描线,切割,拼凑等操作组合任意图形   GC有几个关于Clipping的方法: setClipping(Region r)  通过r,约束gc能画的区域 import org.ecl ...
414149609 评论(0) 有309人浏览 2012-05-17 14:14

开发环境Eclipse和GameServer的JVM调优

杜天微 2012-3-29 系统信息:    XP SP2,E6700 双核3.2G,可用内存 2.96G                 为了提高工作效率,本人尝试优化Eclipse和GameServer的启动参数,由于时间有限,而且这些工作是几周之前做的,很多步骤已经记不清了,所以大概简述调优思想,请大家提出意见。 Eclipse:     下面的优化过程是在安装加密软件之前做的 ...
duzc2 评论(0) 有1599人浏览 2012-05-11 10:03

System.gc和System.runFinalization区别

System.gc(); //告诉垃圾收集器打算进行垃圾收集,而垃圾收集器进不进行收集是不确定的 System.runFinalization(); //强制调用已经失去引用的对象的finalize方法 System.gc(); hints the VM that it is probably time to activate the Thread doing to the Garbage C ...
perfy315 评论(0) 有10807人浏览 2012-04-12 16:25

JVM学习笔记3--分代

1.共划分为三个代:年轻代(Young Generation)、年老代(Old Generation)和持久代(Permanent Generation) 2.年轻代 引用 所有新生成的对象首先都是放在年轻代的。年轻代的目标就是尽可能快速的收集掉那些生命周期短的对象。,两个年轻代分三个区。一个Eden区Survivor区(一般而言)。大部分对象在Eden区中生成。当Eden区满时,还存活的对象将被 ...
42087743 评论(0) 有1205人浏览 2012-04-11 16:19

《程序员》2010精华本笔记

由于之前学JAVA时看的视频是基于J2SE 1.4的,这些天看2010年的《程序员》精华本,竟也有不少收获。现在记录如下: 1、自动选择垃圾收集器、Heap大小及运行时编译器。   JDK5中,引入了成本计算,即根据的成本来动态地调整收集器的具体策略,例如在采用Parallel Scavenge GC 的情况下,每次minor GC后会对eden、to以及TenuringThreshold的大小进 ...
貌似掉线 评论(0) 有1421人浏览 2012-04-02 22:31

jvm打印gc日志到文件

package gc; public class GcTest { private static final int _1MB= 1024 * 1024; public static void main(String[] args) { byte[] a1, a2, a3, a4; a1 = new byte[2 * _1MB]; a2 = new by ...
buzhucele 评论(0) 有2729人浏览 2012-03-14 09:30

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics