![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
GC
pHscccr_Ayyx
新手JavaProgrammer-
展开
-
Java-GC(Gabage Collection)
首先,引入三个问题,通过这三个问题的步步深入来解决对GC的困惑:jvm怎么确定哪些对象应该进行回收jvm会在什么时候进行垃圾回收的动作jvm到底是怎么清楚垃圾对象的这里先提到JVM运行时数据区和JVM内存结构:JVM运行时数据区由程序计数器、堆、虚拟机栈、本地方法栈、方法区部分组成,结构图如下所示。JVM内存结构由程序计数器、堆、栈、本地方法栈、方法区等部分组成,结构图如下所...转载 2019-01-12 12:40:40 · 156 阅读 · 0 评论 -
初始-Java运行时数据区
1.程序计数器程序计数器(Program Counter Register) 是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里,字节码解释器工作时就是通过改变这个计数器的值来选取下一条执行字节码指令。每条线程都有一个独立的程序计数器。如果执行的是java方法,这个计数器记录的是正在执行的虚拟机字节码指令地址。如果是native方法,计数器为空。此内...转载 2019-01-16 22:55:33 · 89 阅读 · 0 评论 -
Minor GC ,Full GC 触发条件
从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Minor GC;对老年代GC称为Major GC;而Full GC是对整个堆来说的;在最近几个版本的JDK里默认包括了对永生带即方法区的回收(JDK8中无永生带了),出现Full GC的时候经常伴随至少一次的Minor GC,但非绝对的。Major GC的速度一般会比Minor GC慢10倍以上。下边看看有那种情...转载 2019-02-21 15:59:34 · 251 阅读 · 0 评论 -
Gabage Collection-垃圾回收中为什么新生代的Eden:Survivor from:Survivor to = 8:1:1
新生代垃圾较多,同时使用的垃圾回收算法也是用的(复制回收)这种算法,这种算法本就是作用于存活对象少的区域。原创 2019-02-20 10:05:34 · 2395 阅读 · 0 评论 -
Java语言中,哪些对象可作为GC Roots?
Java语言中,哪些对象可作为GC Roots?虚拟机栈(栈帧中的本地变量表)中引用的对象;方法区中类静态属于引用的对象;方法区中常量引用的对象;本地方法栈中JNI(即一般说的Native方法)引用的对象。...原创 2019-04-10 11:13:09 · 1038 阅读 · 0 评论 -
JVM-GC,“大话'”垃圾收集器
基于JDK1.7 update 14之后的HotSpot虚拟机的垃圾收集器。1. Serial收集器Client模式下的默认新生代垃圾收集器。单线程、单CPUSTW简单高效2. ParNew收集器Serial收集器的多线程版本,Server模式下虚拟机新生代垃圾收集器。多线程目前为止,只有前面这两种垃圾收集器能够与CMS收集器(并发,垃圾收集线程和用户线程几乎同时进行...原创 2019-04-17 11:39:03 · 131 阅读 · 0 评论