![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
走近JVM
文章平均质量分 94
小小马3707
这个作者很懒,什么都没留下…
展开
-
垃圾收集器大总结
目录 概述 Serial收集器 ParNew收集器 ParallelScavenge收集器 SerialOld收集器 ParallelOld收集器 CMS收集器 G1收集器 理解GC日志 垃圾收集器参数总结 概述 如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。Java虚拟机规范中对垃圾收集器应该如何实现并没有任何规定,因此不同的厂商、不同版本的虚拟机所提供的垃圾收集器都可能会有很大差别,并且一般都会提供参数供用户根据自己的应用特点和要求组合...原创 2021-01-26 16:05:52 · 188 阅读 · 0 评论 -
垃圾收集器和内存分配策略(一)
垃圾收集器和内存分配策略(一) 目录 概述 对象已死吗? 引用计数算法 可达性分析算法 再谈引用 强引用 软引用 弱引用 虚引用 生存还是死亡 垃圾收集算法 标记-清除算法 复制算法 标记-整理算法 分代收集算法 Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的“高墙”,墙外面的人想进去,墙里面的人却想出来。 概述 说起垃圾收集(GarbageCollection,GC),大部分人都把这项技术当做Java语言的伴生产物。事实上,GC的历史比Java久...原创 2021-01-14 15:29:23 · 121 阅读 · 0 评论 -
Java对象的创建,内存布局,访问定位
对象的创建 Java是一门面向对象的编程语言,在Java程序运行过程中无时无刻都有对象被创建出来。在语言层面上,创建对象(例如克隆、反序列化)通常仅仅是一个new关键字而已,而在虚拟机中,对象(文中讨论的对象限于普通Java对象,不包括数组和Class对象等)的创建又是怎样一个过程呢? 虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有,那必须先执行相应的类加载过程。 如何划分可用空间 在.原创 2021-01-13 17:00:28 · 162 阅读 · 0 评论 -
Java内存区域与内存溢出异常
Java内存区域与内存溢出异常 目录 Java内存区域与内存溢出异常 概述 运行时数据区域 程序计数器(PC寄存器) java虚拟机栈 本地方法栈 Java堆 方法区 运行时常量池 概述 Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的“高墙”,墙外面的人想进去,墙里面的人却想出来。对于从事C、C++程序开发的开发人员来说,在内存管理领域,他们既是拥有最高权力的“皇帝”又是从事最基础工作的“劳动人民”——既拥有每一个对象的“所有权”,又担负着每一个对象生命开始到终结的.原创 2021-01-13 16:46:25 · 119 阅读 · 0 评论