JVM
文章平均质量分 85
炼啊啊啊
这个作者很懒,什么都没留下…
展开
-
JVM入门(JVM参数详解和常用命令)
JVM参数1.标准参数包括 -version、-help、-server、-cp等可通过 java -help查看所有标准参数2.非标准参数(-X参数)-Xint 解释执行-Xcomp 第一次使用就编译成本地代码-Xmixed 混合模式,JVM自己来决定3.-XX参数(使用得最多的参数类型,非标准化参数,相对不稳定,主要用于JVM调优和Debug)a.Boolean类型格式:-XX:[+-]<name> +或-表示启用或者禁用name属性比如..原创 2021-01-05 00:56:03 · 660 阅读 · 4 评论 -
JVM入门(Garbage Collect 垃圾回收)
如何确定对象是垃圾?1.引用计数法对于某个对象而言,只要应用程序中持有该对象的引用,就说明该对象不是垃圾,如果一个对象没有任何指针对其引用,它就是垃圾。弊端:如果对象之间相互持有引用,导致永远不能被回收。2.可达性分析通过GC Root的对象,开始向下寻找,看某个对象是否可达。能作为GC Root : 类加载器、Thread、虚拟机栈的本地变量表、static成员、常量引用、本地方法栈的变量等。垃圾回收算法1.标记-清除(Mark-Sweep)标记(找出内存中需要回.原创 2021-01-02 00:54:44 · 247 阅读 · 0 评论 -
JVM入门(模拟内存溢出和压栈)
1.堆内存溢出方法:不断向list中添加对象@RestControllerpublic class HeapController { List<Person> list=new ArrayList<Person>(); @GetMapping("/heap") public String heap() throws Exception{ while(true){ list.add(new Person());...原创 2021-01-01 18:36:52 · 230 阅读 · 1 评论 -
JVM入门(内存模型)
Java对象内存布局一个Java对象在内存中包括3个部分:对象头、实例数据和对齐填充内存模型图解:一块是非堆区,一块是堆区。堆区分为两大块,一个是Old区,一个是Young区。Young区分为两大块,一个是Survivor区(S0+S1),一块是Eden区。比例为 Eden:S0:S1 = 8:1:1S0和S1一样大,也可以叫From和To。对象创建所在区域一般情况下,新创建的对象都会被分配到Eden区,一些特殊的大的对象会直接分配到Old区。比如..原创 2021-01-01 18:19:32 · 131 阅读 · 0 评论 -
JVM入门(Java虚拟机栈和栈帧)
栈帧官网介绍:https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-2.html#jvms-2.6每个栈帧中包括局部变量表(Local Variables)、操作数栈(Operand Stack)、指向运行时常量池的引用(A reference to the run-time constant pool)、方法返回地址(Return Address)和附加信息。局部变量表:方法中定义的局部变量以及方法的参数存放在这张表中;局部变.原创 2021-01-01 17:37:27 · 208 阅读 · 0 评论 -
JVM入门(类加载器和运行时数据区分析)
类装载器ClassLoader作用:装载class文件分类Bootstrap ClassLoader 负责加载$JAVA_HOME中 jre/lib/rt.jar 里所有的class或Xbootclassoath选项指定的jar包。由C++实现,不是ClassLoader子类。 Extension ClassLoader 负责加载java平台中扩展功能的一些jar包,包括$JAVA_HOME中jre/lib/*.jar 或 -Djava.ext.dirs指定目录下的jar包。 App Cla原创 2021-01-01 01:03:08 · 248 阅读 · 0 评论 -
JVM入门(流程分析)
1 JDK8官网https://docs.oracle.com/javase/8/2源码到类文件2.1 编译过程Xxx.java -> 词法分析器 -> tokens流 -> 语法分析器 -> 语法树/抽象语法树 -> 语义分析器-> 注解抽象语法树 -> 字节码生成器 ->Xxx.class文件2.2类文件(.class文件)分析参考https://docs.oracle.com/javase/specs/jvms/se8/...原创 2020-12-31 23:28:05 · 190 阅读 · 1 评论
分享