G1垃圾收集或者Java中垃圾收集的名词收集

第一个要说的就是Garbage First,请问啥叫Garbage First?

尼玛都是Garbage了,还first,second,我不是针对谁,在座的各位都是垃圾!!!

HotSpot

WTF,热壶?我他奶奶的还热火呢,Heat,you know?

总之HotSpot是一种遵循java虚拟机规范的一种实现啦,当时并不是Sun公司搞出来的,而是另外一家公司,后来被Sun公司收购了,anyway,现在都是Oracle的啦,Oracle表示,别抢,都是我的。

垃圾收集器

垃圾收集的概念很早了,不要以为就是Java中最早出现的。这玩意儿60年代就有了。垃圾收集器作用很简单,就是收集内存中不用了的、过时的对象,从从程序设计的角度来说,垃圾收集器就是线程,我可没有说几个线程,因为我也不知道,哈哈。

收集周期

大概意思就是每过多长时间进行一次垃圾收集任务。

G1中的三种垃圾收集周期:年轻代收集周期、多级并发标记周期和混合收集周期

分代垃圾收集、分代、代空间

Java堆

年轻代空间

老年代空间

eden空间

survivor空间

并行垃圾收集

stop-the-world式垃圾收集、暂停

并发垃圾收集器

增量垃圾收集器

标记、重新标记

压缩、压缩型垃圾收集器

拷贝

并行的多级并发标记、清除阶段

HotSpot堆布局方式、各代相邻

分区、巨型分区、空闲分区、空闲分区列表

回退暂停Full GC

垃圾收集遇到转移失败时候的安全保护机制

转移失败、担保失败

引用的自转发

应用线程、垃圾收集线程

混合GC

GC效率定义

收集集合

本地分配缓冲区(TLAB),TLAB分配为啥会快一些?

暂停时间

时间: 2024-10-18 03:12:26

G1垃圾收集或者Java中垃圾收集的名词收集的相关文章

JAVA中的常用名词解释

IDE 集成开发环境(IDE,Integrated Development Environment ) 是用于提供程序开发环境的应用程序,一般包括代码编辑器.编译器.调试器和图形用户界面等工具.集成了代码编写功能.分析功能.编译功能.调试功能等一体化的开发软件服务套.所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境.如微软的Visual Studio系列,Borland的C++ Builder.Delphi系列等.该程序可以独立运行,也可以和其它程序并用.IDE多被用于开发HTML应用

java中关键字和名词理解

1.抽象类: 抽象类体现的是一种模板模式的设计,抽象类作为多个子类的通用模板,其中部分方法已经实现,也提供部分抽象方法,推迟到子类中去实现.所以子类在抽象类的基础上进行扩展,改造,但子类总体上会大致保留抽象类的行为方式.抽象类也是一个类,可继承接口.抽象类不能创建实例,只能当成父类来被继承. 2.接口: 接口定义的是一种规范,接口可以多继承多个父接口. 原文地址:https://www.cnblogs.com/aibaiyang/p/9573266.html

深入JVM虚拟机(三) Java GC垃圾收集

深入JVM虚拟机(三) Java GC垃圾收集 1 Java GC垃圾收集 1.1 GC的概念 Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之一,作为Java开发者,一般不需要专门编写内存回收和垃圾清理代码,对内存泄露和溢出的问题,也不需要像C程序员那样战战兢兢.这是因为在Java虚拟机中,存在自动内存管理和垃圾清扫机制.概括地说,该机制对 JVM(Java Virtual Machine)中的内存进行标记,并确定哪些内存需要回

2. Java中的垃圾收集 - GC参考手册

标记-清除(Mark and Sweep)是最经典的垃圾收集算法.将理论用于生产实践时, 会有很多需要优化调整的地点, 以适应具体环境.下面通过一个简单的例子, 让我们一步步记录下来, 看看如何才能保证JVM能安全持续地分配对象. 您应该已经阅读了前一章: 1. 垃圾收集简介 - GC参考手册 碎片整理(Fragmenting and Compacting) 每次执行清除(sweeping), JVM 都必须保证不可达对象占用的内存能被回收重用.但这(最终)有可能会产生内存碎片(类似于磁盘碎片)

Java虚拟机垃圾收集器与内存分配策略

Java虚拟机垃圾收集器与内存分配策略 概述 那些内存需要回收,什么时候回收,如何回收是GC需要完成的3件事情. 程序计数器,虚拟机栈与本地方法栈这三个区域都是线程私有的,内存的分配与回收都具有确定性,内存随着方法结束或者线程结束就回收了. java堆与方法区在运行期才知道创建那些对象,这部分内存分配是动态的,本章笔记中分配与回收的内存指的就是:java堆与方法区. 判断对象已经死了 引用计数算法:给对象添加一个引用计数器,每当有一个地方引用它,计数器+1;引用失败,计数器-1.计数器为0则改判

深入理解JAVA虚拟机 垃圾收集器和内存分配策略

引用计数算法 很多教科书判断对象是否存活的算法是这样的:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1:当引用失效时,计数器值就减1:任何时刻计数器都为0的对象就是不可能再被使用的. 客观地说,引用计数算法(Reference Counting)的实现简单,判定效率也很高,在大部分情况下它都是一个不错的算法,也有一些比较著名的应用案例,例如微软的COM(Component Object Model)技术.使用ActionScript 3的FlashPlayer.Python语

G1垃圾收集器和CMS垃圾收集器 (http://mm.fancymore.com/reading/G1-CMS%E5%9E%83%E5%9C%BE%E7%AE%97%E6%B3%95.html#toc_8)

参考来源 JVM 体系架构 堆/栈的内存分配 静态和非静态方法的内存分配 CMS 回收算法 应用场景 CMS 垃圾收集阶段划分(Collection Phases) CMS什么时候启动 CMS缺点 G1收集算法 G1的发展 分代垃圾回收瓶颈 G1使用场景 G1特点 G1堆内存的分配 G1的进程内存占用(Footprint) G1 收集器收集过程 G1命令行参数 记录G1的GC日志 G1性能调优 参考来源 http://blog.csdn.net/renfufei/article/details/

(转)《深入理解java虚拟机》学习笔记4——Java虚拟机垃圾收集器

Java堆内存被划分为新生代和年老代两部分,新生代主要使用复制和标记-清除垃圾回收算法,年老代主要使用标记-整理垃圾回收算法,因此java虚拟中针对新生代和年老代分别提供了多种不同的垃圾收集器,JDK1.6中Sun HotSpot虚拟机的垃圾收集器如下: 图中如果两个垃圾收集器直接有连线,则表明这两个垃圾收集器可以搭配使用. (1).Serial垃圾收集器: Serial是最基本.历史最悠久的垃圾收集器,使用复制算法,曾经是JDK1.3.1之前新生代唯一的垃圾收集器. Serial是一个单线程的

java - GC垃圾收集器详解(三)

以前收集器的特点 年轻代和老年代是各自独立且连续的内存块 年轻代收集必须使用单个eden+S0+S1进行复制算法 老年代收集扫描整个老年代区域 都是以尽可能少而快速地执行GC为设计原则 G1是什么 G1(Garbage-Frist)收集器,是一款面向服务端应用的收集器 从官网的描述中,我们知道G1是一种服务器端的垃圾收集器,应用在多处理器和大容量内存环境中,在提高吞吐量的同时,尽可能的满足垃圾收集暂停时间的要求.另外,它还具有以下特性: 像CMS收集器一样,能与应用程序线程并发执行 整理空闲空间