当对象判定为"已死"状态,虚拟就要采取一定的手段将这些对象从内存中移除,即回收垃圾,回收过程有采用一定的算法。如下是一些主要的垃圾收集算法:
1.标记-清除算法
该算法是最基础的算法,分为“标记”和“清除”两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收掉所有被标记的对象。之所有说它是最基础的算法是因为后续的收集算法都是基于这种思路并对其缺点进行改进得到的。它的缺点主要有两个...
分类:
编程语言 时间:
2014-12-09 10:37:18
阅读次数:
191
第6章 类文件6.3 Class类文件的结构 Class文件是一组以8位字节为基础单位的二进制流。 Class文件格式采用一种类似C语言结构伪结构存储数据,这种伪结构中只有两种数据类型:无符号数和表 无符号数属于基本的数据类型以u1,u2,u4,u8来分别代表一个字节、2个字节,4个字节、...
分类:
编程语言 时间:
2014-12-07 00:03:49
阅读次数:
319
堆中几乎存放着Java世界中所有的对象实例,垃圾收集器在对堆回收之前,第一件事情就是要确定这些对象哪些还“存活”着,哪些对象已经“死去”(即不可能再被任何途径使用的对象)
1.引用计数算法
很多教科书判断对象是否存活的算法是这样的:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值加1;当引用失效时,计数器减1;任何时刻计数器都为0的对象就是不可能再被使用的。
引...
分类:
编程语言 时间:
2014-12-05 19:28:36
阅读次数:
252
Java虚拟机在执行Java程序过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域有自各的用途,以及创建及销毁时间,有的区域随着虚拟机进程的启动而存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范(第2版)》规定,Java虚拟机管理的内存区域包括以下几个运行时数据区域,下如图
1.程序计数器(Program Counter Register)
...
分类:
编程语言 时间:
2014-12-05 17:26:15
阅读次数:
246
注:刚读完《深入理解Java虚拟机》的类文件这一章,梳理一下思路。在此之前我只知道源文件.java需要先进行javac编译成为.class文件。那么.class这个类文件是如何保存的呢?看一遍书都是浑浑噩噩搞不太明白,看了三遍大概知道是怎么存储了。原来就是用的表和无符号数,u1,u2,u4,u8, ...
分类:
编程语言 时间:
2014-12-03 07:03:10
阅读次数:
197
第4章 虚拟机性能监按与故障处理工具jps 虚拟机进程状况工具jstat 虚拟机统计信息监视工具 JVM Statistics Monitoring Tool jstat [ option vmid [interval[s|ms] [count]] jstat -gc 2764 250 20 ...
分类:
编程语言 时间:
2014-12-03 01:36:23
阅读次数:
210
1、概述2、对象已死吗?引用计数器 给对象添加一个引用计数器,每当有引用时,计数器加1,引用失效时,计数器减1;任何时刻计数器为0的对象就是不可能再被使用的。 若对象是循环引用,则无法处理。JVM不使用。可达性分析算法 通过一系列的称为“GC Roots”的对象作为起始点,从这些节点开始向下搜...
分类:
编程语言 时间:
2014-12-03 00:12:31
阅读次数:
181
第2章 Java内存区域与内存溢出异常运行数据区域 1、程序计数器(Program Counter Register) 是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。 2、Java虚拟机栈(Stack)线程私有,每一个方法调用时都会创建一个栈帧(Stack Frame)用.....
分类:
编程语言 时间:
2014-12-02 14:58:41
阅读次数:
177
最近闲着没事又拿起《深入理解JAVA虚拟机》拜读了一遍。对JVM的理解更深了,今天先总结一下JVM内存的结构。JVM 内存分为几个区域:程序计数器虚拟机栈本地方法栈方法区堆其中程序计数器,虚拟机栈,本地方法栈是线程私有的。 方法区和堆是线程共享的。程序计数器程序计数器是一小块内存空间,存储着当前线程...
分类:
其他好文 时间:
2014-11-27 18:12:07
阅读次数:
156
1、深入理解Java的3大特性,封装、继承、多态
2、回调是一个最基本的设计模式,回调其实不难,其实如果你真正把观察者模式弄透彻的话,回调你看起来就特别特别简单了,一样的道理!
在Android里面你想写出一个高质量的代码,回调是一个最基本的东西。
比如你会经常去写callback,其实我跟大家分享一下最本质的东西(这个现在先简单说一下,项目中大量用到)
...
分类:
其他好文 时间:
2014-11-26 01:27:26
阅读次数:
244