开头的数字代表了GC发生的时间,也就是从java虚拟机启动以来经过的秒数 GC日志开头的[GC和[FULL GC说明了这次垃圾收集的停顿类型,而不是用来区分新生代GC还是老年代GC的。如果有FULL,说明这次GC是发生了Stop-The-World的。如果是调用了System.gc()触发的收集,则 ...
分类:
其他好文 时间:
2019-09-06 00:59:51
阅读次数:
96
GC回收算法 什么是垃圾? 类比日常生活中,如果一个东西经常没被使用,那么就可以说是垃圾。 同理,如果一个对象不可能再被引用,那么这个对象就是垃圾,应该被回收。 垃圾:不可能再被引用的对象。 finalize方法 在对象没有被引用时调用 在Object类里定义 新生代与老年代 IBM公司的研究表明, ...
分类:
编程语言 时间:
2019-09-01 16:35:45
阅读次数:
72
1、标记-清除算法 最基础的收集算法、主要对内存中的不使用的内存标记为可回收状态,进行回收 缺点: 标记、回收效率不高还会导致内存分配不够连续,容易触发新生代垃圾回收 2、复制算法 讲可用内存分为两部分,每次只是用一部分,当其中一部分内存使用完之后,就将存活的对象复制到另外一块,然后对已使用的进行清 ...
分类:
编程语言 时间:
2019-08-27 17:41:25
阅读次数:
90
Q: 什么是内存泄露? A:已经不再使用的内存未能被程序释放,叫内存泄露(memory leak)。 Q: 什么情况下出现内存泄漏? 首先了解一下【垃圾回收】:垃圾回收(英语:Garbage Collection,缩写为GC)在计算器科学中是一种自动的存储器管理机制。当一个计算机上的动态存储器不再需 ...
分类:
其他好文 时间:
2019-08-23 16:19:58
阅读次数:
103
《深入理解 Java 虚拟机》学习 垃圾回收算法 1. 说明 程序计数器,虚拟机栈,本地方法栈三个区域随线程而生,随线程而灭,这几个区域的内存分配和回收都具备确定性 Java 堆和方法区这部分内存的分配和回收都是动态的,垃圾收集器所关注的是这部分内存 新生代和老年代 Java 中的堆是 JVM 所管 ...
分类:
编程语言 时间:
2019-08-23 13:20:24
阅读次数:
83
军训入营学生发言稿 敬爱的教官、老师,亲爱的同学们: 大家好!我是六一班的奚勤勤。在这个秋高气爽,硕果飘香的季节,我们带着自豪和自信,带着父母殷切的期望,更带着对未来美好的憧憬与渴望,来到了六团中学,在这里开始人生新的成长。 今天,我很荣幸能作为六年级新生代表发言。相信此时此刻在场的每位同学都跟我一... ...
分类:
其他好文 时间:
2019-08-22 11:08:54
阅读次数:
102
推荐阅读:https://www.cnblogs.com/chengxs/p/10919311.html 在进行老生代的标记清除法回收以前,还会有一个新生代的垃圾回收算法执行。 新生代和老生代 所谓新生代,指的是新产生的对象;老生代就是经历过新生代垃圾回收后还“存活”下来的对象。 新生代的垃圾回收算 ...
分类:
Web程序 时间:
2019-08-21 09:38:57
阅读次数:
171
前言:新生代的收集器有:Serial,ParNew,Parallel Scavenge等。老年代有:CMS,SerialOld,Paraller Old等。接下来将深入理解各个垃圾收集器的原理,以及它们如何在不同场景下进行搭配使用。 同时,先解释几个名次: (一) 新生代的收集器们 (1) ParN ...
分类:
其他好文 时间:
2019-08-19 18:54:40
阅读次数:
85
JVM参数: 1)-Xmn: 新生代内存上限值 2)-Xms: 整个堆区初始内存分配的大小 3)-Xmx: 堆区内存的最大分配大小 4)-XX:SurvivorRatio: 决定eden与一个survivor大小之比 5)-XX:PretenureSizeThreshold: 大对象直接放入老年代, ...
分类:
其他好文 时间:
2019-08-16 17:13:15
阅读次数:
84