![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jvm
CAFEBABE00
.
展开
-
JVM垃圾回收与调优详解
1.JVM内存分配与回收 1.1 对象优先在Eden区分配 大多数情况下,对象在新生代中 Eden 区分配。当 Eden 区没有足够空间进行分配时,虚拟机将发起一次Minor GC。我们来进行实际测试一下。 在测试之前我们先来看看 Minor Gc和Full GC 有什么不同呢? 新生代GC(Minor GC):指发生新生代的的垃圾收集动作,Minor GC非常频繁,回收速度一般也比较快。 老年代...原创 2020-02-18 13:10:49 · 193 阅读 · 0 评论 -
【附录】JVM指令集
跳转到class文件目录,使用 javap -c StringTest.class -> p.txt 1 命令将编译后的文件输出到p.txt文件 栈和局部变量操作 将常量压入栈的指令 aconst_null 将null对象引用压入栈 iconst_m1 将int类型常量-1压入栈 iconst_0 将int类型常量0压入栈 iconst_1 将int类型常量1压入栈 iconst_2 将in...原创 2020-02-18 12:44:20 · 129 阅读 · 0 评论 -
【附录】JVM性能调优监测工具
Jinfo 查看正在运行的Java应用程序的扩展参数 查看jvm的参数 查看java系统参数 Jstat jstat命令可以查看堆内存各部分的使用量,以及加载类的数量。命令的格式如下: jstat [-命令选项] [vmid] [间隔时间/毫秒] [查询次数] 注意:使用的jdk版本是jdk8. 类加载统计: Loaded:加载class的数量 Bytes:所占用空间大小 Unloaded:...原创 2020-02-18 12:38:47 · 196 阅读 · 0 评论 -
【深入理解】Java虚拟机
主要内容 JVM整体架构 JVM类加载器 JVM内存结构 JVM执行引擎 1.JVM整体架构 • JVM(虚拟机):指以软件的方式模拟具有完整硬件系统功能、运 行在一个完全隔离环境中的完整计算机系统,是物理机的软件 实现。常用的虚拟机有VMWare,Virtual Box,Java Virtual Machine • Java虚拟机阵营:SunHotSpotVM、BEAJRockitVM、...原创 2020-01-07 17:15:37 · 221 阅读 · 0 评论 -
【深入理解】JVM学习笔记—从字节码角度理解动态代理
从字节码角度理解动态代理 首先编写一个动态代理实例 interface Subject{ void request(); } class RealSubject implements Subject{ public void request(){ System.out.println("real subject"); } } class Dynami...原创 2019-12-17 22:10:18 · 94 阅读 · 0 评论 -
【深入理解】JVM学习笔记—字节码
Java虚拟机不和包括java在内的任何语言绑定,它只与“Class”特定的二进制文件格式关联,Class文件中包含Java虚拟机指令集和符号表以及若干其他辅助信息。本文将以字节码的角度来研究Java虚拟机。 字节码 Java跨平台的原因是JVM不跨平台 首先编写一个简单的java代码,一次为例进行讲解 测试1 public class MyTest1{ private int a=1...原创 2019-12-17 22:05:10 · 129 阅读 · 0 评论 -
【深入理解】JVM学习笔记—类加载机制
最近看张龙老师的jvm课程做的一些笔记。 类加载 class loading 在java代码中,类的加载、连接和初始化过程都是在程序运行期间完成的。(类从磁盘加载到内存中经历的三个阶段) 提供了更大的灵活性,增加了更多的可能性。 类加载器深入剖析: Java虚拟机与程序的生命周期 在如下几种情况下,java虚拟机将结束生命周期 (1)执行了System.exit()方法 (2)程序正常执行结束 (...原创 2019-12-16 21:54:29 · 114 阅读 · 0 评论