随笔分类 -  【Java】-- JVM虚拟机

【JVM虚拟机】(9)-- JVM是如何处理异常的
摘要:#JVM是如何处理异常的 上篇博客我们简单说过异常信息是存放在属性表集合中的Code属性表里,那么这篇博客就单独讲Code属性表中的exception_table。 在讲之前我们先思考两个问题? 1、为什么捕获异常会较大的性能消耗? 2、为什么finally中的代码会永远执行? 接下来会从JVM虚拟 阅读全文
posted @ 2019-04-25 00:11 雨点的名字 阅读(5000) 评论(0) 推荐(1) 编辑
【JVM虚拟机】(8)--深入理解Class中--方法、属性表集合
摘要:#深入理解Class中--方法、属性表集合 之前有关class文件已经写了两篇博客: 1、【JVM虚拟机】(5) 深入理解JVM-Class中常量池 2、【JVM虚拟机】(6) 深入理解Class中访问标志、类索引、父类索引、接口索引 3、【JVM虚拟机】(7) 深入理解Class中-属性集合 那么 阅读全文
posted @ 2019-04-18 00:19 雨点的名字 阅读(1798) 评论(1) 推荐(0) 编辑
【JVM虚拟机】(7)---深入理解Class中-属性集合
摘要:深入理解Class中-属性集合 之前有关class文件已经写了两篇博客: 1、【JVM虚拟机】(5) 深入理解JVM-Class中常量池 2、【JVM虚拟机】(6) 深入理解Class中访问标志、类索引、父类索引、接口索引 那么这篇博客主要讲有关 字段表集合 相关的理解和代码示例。 字段表:用于描述 阅读全文
posted @ 2019-04-11 23:31 雨点的名字 阅读(1372) 评论(0) 推荐(1) 编辑
【JVM虚拟机】(6)---深入理解Class中访问标志、类索引、父类索引、接口索引
摘要:JVM(6)访问标志,类索引 上一篇博客讲【JVM虚拟机】(5) 深入理解JVM-Class中常量池 我们知道一个class文件正常可以分为7个部分: 魔数与class文件版本 常量池 访问标志 类索引、父类索引、接口索引 字段表集合 方法表集合 属性表集合 那么这篇博客主要讲有关 访问标志 和 类 阅读全文
posted @ 2019-04-09 19:32 雨点的名字 阅读(1748) 评论(2) 推荐(2) 编辑
【JVM虚拟机】(5)---深入理解JVM-Class中常量池
摘要:深入理解Class 常量池 一、概念 1、jvm生命周期 启动:当启动一个java程序时,一个jvm实例就诞生了,任何一个拥有main方法的class都可以作为jvm实例运行的起点。 运行:main()函数作为程序初始线程起点,其它线程由该线程启动,包括守护线程(daemon)和non-daemon 阅读全文
posted @ 2019-04-03 00:49 雨点的名字 阅读(2700) 评论(0) 推荐(6) 编辑
【JVM虚拟机】(4)---性能调优
摘要:JVM性能调优 一、调优策略 对于GC的性能主要有2个方面的指标:吞吐量throughput(工作时间不算gc的时间占总的时间比)和暂停pause(gc发生时app对外显示的无法响应)。 1、调优的目的 调优的最终目的当然增大吞吐量,减少暂停时间咯,映射到GC层面主要关心下面这两点: (1)将转移到 阅读全文
posted @ 2018-06-24 11:50 雨点的名字 阅读(1514) 评论(3) 推荐(3) 编辑
【JVM虚拟机】(3)---垃圾回收器
摘要:垃圾回收器 收集算法是内存回收的方法论,垃圾收集器就是内存回收的具体实现。收集器主要分三类:串行收集器、并行收集器以及并发收集器。 一、基础概念 1、并发和并行 a:并行(Parallel):指多条垃圾收集线程并行工作,但此时用户线程仍然处于等待状态。 b:并发(Concurrent):指用户线程与 阅读全文
posted @ 2018-06-21 22:45 雨点的名字 阅读(1347) 评论(2) 推荐(0) 编辑
【JVM虚拟机】(2)---GC 算法与种类
摘要:GC 算法与种类 对于垃圾收集(GC), 我们需要考虑三件事情:哪些内存需要回收?如何判断是垃圾对象?垃圾回收算法有哪些? 一、GC的工作区域 1、不是GC的工作区域 (1)程序计数器、虚拟机栈和本地方法栈三个区域是线程私有的,随线程生而生,随线程灭而灭; (2)栈中的栈帧随着方法的进入和退出而进行 阅读全文
posted @ 2018-06-21 21:50 雨点的名字 阅读(3209) 评论(0) 推荐(4) 编辑
JVM虚拟机(1)---常用JVM配置参数
摘要:常用JVM配置参数 常用JVM配置参数主要有:Trace跟踪参数、堆的分配参数、栈的分配参数。 一、Trace跟踪参数 跟踪参数用于跟踪监控JVM,对于开发人员来讲用于JVM调优以及故障排查的。 1、打印GC的简要信息 -verbose:gc -XX:+PrintGC 这两个配置参数效果是一样的,都 阅读全文
posted @ 2018-06-20 22:53 雨点的名字 阅读(2620) 评论(0) 推荐(5) 编辑