随笔分类 -  JVM

摘要:调优的目的 减小响应时间 提高吞吐量 阅读全文
posted @ 2022-08-28 13:18 -Lucas 阅读(17) 评论(0) 推荐(0) 编辑
摘要:1. 对象年龄达到阈值后进入老年代 默认情况下,对象在新生代经历了15次(CMS默认6,其他回收器默认15,以为4字节最大长度限制,最大值也是15)GC后,便会达到进入老年代的条件,将对象转移进入老年代。当然,年龄的阈值可以通过JVM参数进行设置: -XX:MaxTenuringThreshold= 阅读全文
posted @ 2022-08-25 22:23 -Lucas 阅读(1131) 评论(0) 推荐(0) 编辑
摘要:怎么判定对象是否为垃圾对象 1.引用计数法 在每个对象中添加一个引用计数器,当有地方引用这个对象的时候,引用计数器就+1,当引用失效的时候,计数器的值就-1。任何时刻计数器为0的对象就是不可能再被使用的。 优点:容易实现 缺点:很难解决对象之间相互循环引用的问题 2.可达性分析 目前的JAVA虚拟机 阅读全文
posted @ 2022-08-25 22:14 -Lucas 阅读(160) 评论(0) 推荐(0) 编辑
摘要:创建对象的几种方式 1. new关键字 Object obj = new Object(); 2. 反射 3.克隆 4.反序列化 创建对象的过程 1.创建过程 (1)检查是否加载过 虚拟机解析new指令,首先检查常量池是否有类的符号引用,并且检查是否已经加载解析和初始化,没有就执行类加载过程 (2) 阅读全文
posted @ 2022-08-25 12:17 -Lucas 阅读(130) 评论(0) 推荐(0) 编辑
摘要:溢出区域 内存溢出分为堆内存溢出和栈内存溢出 如果虚拟机在扩展堆时无法申请到足够大的内存空间时,就会抛出outOfMemoryError 如果线程请求的栈深度大于虚拟机所允许的最大深度,则抛出StackOverflflowError 栈溢出 public class TestOverFlow { p 阅读全文
posted @ 2022-08-24 23:36 -Lucas 阅读(110) 评论(0) 推荐(0) 编辑
摘要:什么是JVM JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一个虚构出来的计算机,有着自己完善的硬件架构,如处理器、堆栈等。 为什么需要JVM Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代 阅读全文
posted @ 2022-08-24 16:51 -Lucas 阅读(68) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示