Java JVM-GC(名词解释&按代收集)

原创 2011年01月10日 23:25:00

Java规范没有强制要求JVM必须实现GC,也更没有规范GC的具体实现细节。

下面讲讲和GC相关的概念。

引用对象:引用对象都是Reference的子类,如SoftwareReference

强引用:从根通过任意路径到达对象都不存在通过引用对象间接触及

软引用(SoftReference):不存在强引用的对象且通过软引用维持的对象引用

弱引用(WeakReference):不存在强引用且通过软引用对象维持对象的可触及性

虚引用(PhantomReference):运行了终结方法但是还未被回收的对象。

 

我们平时创建的对象是强引用对象,除非我们显示的使用SoftReference、WeakReference、PhantomReference来维护对象的可触及性。

 

      GC在进行回收时,一般都采用按代收集的算法,这样做的好处时,尽量使大对象、声明周期长的对象不被收集。而对于声明周期较短的对象则可以较快的被垃圾收集器给处理掉。

      按代收集是将堆内存划分为两个或多个年龄层,每一堆都会有自己的子堆。除了年龄最高的层外,其他的层都可以给定内存的大小,以使按代收集器渐进的收集垃圾对象。

Java 分代收集算法

摘要当前商业虚拟机的垃圾收集都采用“分代收集”(Generational Collection)算法,这种算法并没有什么新的思想,只是根据对象的存活周期的不同将内存划分为几块。一般是把Java堆分为新...
  • mccand1234
  • mccand1234
  • 2016年07月31日 15:02
  • 3956

java垃圾回收算法之-分代收集

概述这种算法,根据对象的存活周期的不同将内存划分成几块,新生代和老年代,这样就可以根据各个年代的特点采用最适当的收集算法。可以用抓重点的思路来理解这个算法。 新生代对象朝生夕死,对象数量多,只要重...
  • linsongbin1
  • linsongbin1
  • 2016年06月15日 09:25
  • 729

Java垃圾回收-分代收集

Java自动垃圾回收(Automatic Garbage Collection)是自动回收堆上不再使用的内存,new的对象在程序中没有引用指向它,就不会被回收。回收的实现很多,有Reference C...
  • whuqin
  • whuqin
  • 2015年02月15日 19:15
  • 2263

JVM垃圾回收机制总结(3) :按代垃圾收集器

全文转载:http://pengjiaheng.iteye.com/blog/524024 作者:和你在一起 [from JavaEye] 为什么要分代     分代的垃圾回收策略,是基于这样一...
  • sunmenggmail
  • sunmenggmail
  • 2013年08月22日 10:22
  • 978

图解Java中的GC(分代收集器)

前面在Java垃圾收集算法中讲过垃圾收集算法中的分代收集器,今天看了一个视频发现里面将的也很不错,所以决定再总结一下。 我们知道,在分代收集算法中堆空间被分为新生代和老年代。因为新生代中对象的存活...
  • hp910315
  • hp910315
  • 2016年03月26日 11:43
  • 1819

Java GC 分代收集算法

摘要 当前商业虚拟机的垃圾收集都采用“分代收集”(Generational Collection)算法,这种算法并没有什么新的思想,只是根据对象的存活周期的不同将内存划分为几块。一般是把Java...
  • A123638
  • A123638
  • 2016年12月22日 16:16
  • 317

JVM-GC算法_分代收集算法

楼主挺辛苦,觉得不错,就赞一下or评价一下 O(∩_∩)O
  • ZhengQuanWu
  • ZhengQuanWu
  • 2015年11月12日 10:50
  • 1753

安全渗透测试笔记-------信息收集中名词解释

第 2 章信息收集          信息收集(InformationGathering)是指通过各种方式获取所需要的信息。信息收集是渗透网络网络取证的第一步,也是关键的一步,最重要的一步。 2....
  • henni_719
  • henni_719
  • 2017年09月13日 10:46
  • 321

Java名词解释

1. JDK: J2SE Development Kit -->java开发工具集,用Java语言编写applet小程序和应用程序的软件开发环境。它比JRE多了开发工具和API.2.JRE:Java运...
  • qjyong
  • qjyong
  • 2006年11月28日 22:28
  • 3289

Java基础——名词解释

1)类与对象 2)面向对象 3)基本语法 4)构造器(构造方法) 5)方法重载 6)继承(子类和父类) 7)方法重写 8)转型:父类引用指向子类引用 9)多态 10)当前类对象this...
  • Coder_Chang
  • Coder_Chang
  • 2016年05月29日 15:49
  • 1802
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java JVM-GC(名词解释&按代收集)
举报原因:
原因补充:

(最多只允许输入30个字)