![](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 · 197 阅读 · 0 评论 -
【附录】JVM指令集
跳转到class文件目录,使用javap -c StringTest.class -> p.txt1命令将编译后的文件输出到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 · 133 阅读 · 0 评论 -
【附录】JVM性能调优监测工具
Jinfo查看正在运行的Java应用程序的扩展参数查看jvm的参数查看java系统参数Jstatjstat命令可以查看堆内存各部分的使用量,以及加载类的数量。命令的格式如下:jstat [-命令选项] [vmid] [间隔时间/毫秒] [查询次数]注意:使用的jdk版本是jdk8.类加载统计:Loaded:加载class的数量Bytes:所占用空间大小Unloaded:...原创 2020-02-18 12:38:47 · 200 阅读 · 0 评论 -
【深入理解】Java虚拟机
主要内容JVM整体架构JVM类加载器JVM内存结构JVM执行引擎1.JVM整体架构• JVM(虚拟机):指以软件的方式模拟具有完整硬件系统功能、运 行在一个完全隔离环境中的完整计算机系统,是物理机的软件 实现。常用的虚拟机有VMWare,Virtual Box,Java Virtual Machine• Java虚拟机阵营:SunHotSpotVM、BEAJRockitVM、...原创 2020-01-07 17:15:37 · 225 阅读 · 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 · 95 阅读 · 0 评论 -
【深入理解】JVM学习笔记—字节码
Java虚拟机不和包括java在内的任何语言绑定,它只与“Class”特定的二进制文件格式关联,Class文件中包含Java虚拟机指令集和符号表以及若干其他辅助信息。本文将以字节码的角度来研究Java虚拟机。字节码Java跨平台的原因是JVM不跨平台首先编写一个简单的java代码,一次为例进行讲解测试1public class MyTest1{ private int a=1...原创 2019-12-17 22:05:10 · 130 阅读 · 0 评论 -
【深入理解】JVM学习笔记—类加载机制
最近看张龙老师的jvm课程做的一些笔记。类加载class loading在java代码中,类的加载、连接和初始化过程都是在程序运行期间完成的。(类从磁盘加载到内存中经历的三个阶段)提供了更大的灵活性,增加了更多的可能性。类加载器深入剖析:Java虚拟机与程序的生命周期在如下几种情况下,java虚拟机将结束生命周期(1)执行了System.exit()方法(2)程序正常执行结束(...原创 2019-12-16 21:54:29 · 116 阅读 · 0 评论