随笔分类 - 【JVM】JVM系列
摘要:对象优先在Eden分配大多情况,对象在新生代Eden区分配。当Eden区没有足够空间进行分配时,虚拟机将进行一次Minor GC。虚拟机提供了参数 -XX:+PrintGCDetails ,在虚拟机发生垃圾收集行为时打印内存回收日志。新生代Minor GC ...
阅读全文
摘要:简述如果说收集算法时内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。这里我们讨论的垃圾收集器是基于JKD1.7之后的Hotspot虚拟机,这个虚拟机包含的所有收集器如图: Serial 收集器Serial收集器是一个单线程收集器,它在进行垃圾收集时,...
阅读全文
摘要:1.垃圾收集概念GC目的分配内存,为每个新建的对象分配空间确保还在使用的对象的内存一直还在,不能把有用的空间当垃圾回收了释放不再使用的对象所占用的空间我们把还被引用的对象称为活的,把不再被引用的对象认为是死的,也就是我们说的垃圾。GC 的工作就是找到死的对象...
阅读全文
摘要:1.简述在Java内存运行时区域的各个部分中,程序计数器、虚拟机栈、本地方法栈3个区域随着线程而生,随着线程而亡。栈中的栈帧随着方法的进入和退出而有条不紊的进行着入栈和出栈操作。 每个栈帧需要分配多少内存基本上在类结构确定时就已知了,因此这几个区域的内存分配...
阅读全文
摘要:简述Java内存模型(Java Memory Model,JMM),是用来屏蔽掉各种硬件和操作系统的内存访问差异,以实现Java程序在各种 平台下都能达到一致的内存访问效果.在JVM内部,Java内存模型把内存分成了两部分:线程栈区和堆区,下图展示了Java...
阅读全文
摘要:1.简述对于Java程序员来说,在虚拟机自动内存管理机制下,不需要关心内存的回收问题,但是一旦出现内存泄漏和溢出问题,如果不了解虚拟机是怎么管理内存的,那么问题排查工作将是一项非常艰巨的任务。本文主要从概念层面介绍虚拟机内存的各个区域,以及对象创建时内存如何...
阅读全文
摘要:什么是类加载机制虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这既是虚拟机的类加载机制类的生命周期生命周期简述类从被加载到虚拟机内存开始,到卸载为止,它的整个生命周期包括:加载...
阅读全文
摘要:本系列主要分析JVM主要功能要点,初步大纲如下,会根据写作情况进行细化,目的在于梳理JVM的知识体系,具体分析文章会陆续发布。[JVM]类加载机制(1)[JVM]Java内存区域(2)[JVM]Java内存模型(3)[JVM]GC之对象生死(4)[JVM]垃...
阅读全文
浙公网安备 33010602011771号