![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jvm系统性学习
文章平均质量分 71
masternick
这个作者很懒,什么都没留下…
展开
-
《深入理解java虚拟机》读书笔记(5)- JVM字节码执行引擎
前言 面向的读者: 有一定java基础 想系统学习JVM基础知识 文章目的: 自己读书笔记 精炼知识点,实现输入输出闭环 一、运行时栈帧结构 JVM 运行的基本单元就是栈帧(Stack Frame)。 在活动线程中,只有位于栈顶的方法才是运行的。一个stack frame 结构如下: 局部变量表(local variable table): 方法参数和方法内部定义的局部变量。按照slot 的方式进行分配。一个slot 是32位。double 和long 类型占用两个slot。 操作数栈(oper原创 2021-05-11 07:19:46 · 69 阅读 · 0 评论 -
《深入理解java虚拟机》读书笔记(7)- 线程安全与锁优化
前言 面向的读者: 有一定java基础 想系统学习JVM基础知识 文章目的: 自己读书笔记 精炼知识点,实现输入输出闭环原创 2021-05-11 07:16:48 · 75 阅读 · 0 评论 -
《深入理解java虚拟机》读书笔记(6)- 内存模型与线程
前言 面向的读者: 有一定java基础 想系统学习JVM基础知识 文章目的: 自己读书笔记 精炼知识点,实现输入输出闭环 一、java 内存模型 1.1 java 内存模型 所有变量都存储再主内存中,而每个线程都有自己的工作内存,线程工作内存中保存了一份主内存中变量的副本,线程对变量的所有操作都必须再工作内存中进行。和主内存的交互通过save load 来完成。 1.2 内存之间的交互操作 上图中save 和 load 的那块,就是主内存和工作内存之间的操作,JVM中定义了交互协议,来完成主内存和工作原创 2021-05-10 17:40:12 · 77 阅读 · 0 评论 -
《深入理解java虚拟机》读书笔记(2)- JVM垃圾回收与内存分配
《深入理解java虚拟机》读书笔记(2)- JVM垃圾回收与内存分配 文章目录《深入理解java虚拟机》读书笔记(2)- JVM垃圾回收与内存分配前言一、对象能被回收的条件是什么1. 引用计数算法(JVM没有采用此方法)2. 可达性分析总结 前言 面向的读者: 有一定java基础 想系统学习JVM基础知识 文章目的: 自己读书笔记 精炼知识点,实现输入输出闭环 一、对象能被回收的条件是什么 一个对象是否能被回收,需要做出精确的判断。这个是对象回收的必要条件。JVM有自己的一套体系来产生这个条件。简单原创 2021-04-26 22:53:18 · 106 阅读 · 0 评论 -
《深入理解java虚拟机》读书笔记(1)- JVM内存基本结构
文章目录前言一、JVM运行时内存区域二、java对象在内存中是怎样存在的1. 对象的创建1.1 对象创建方式1.2 考虑多线程的情况2. 对象的内存布局3. 怎么找到内存中的对象总结 前言 面向的读者: 有一定java基础 想系统学习JVM基础知识 一、JVM运行时内存区域 需要注意的是,JVM划分了很多内存区域,这些区域都是逻辑上的。其实在物理上,他们可以是同一块区域或者不块区域。这里,我们只讨论逻辑区域。 程序计数器(program counter register): 由JVM 控制,没有定义O原创 2021-04-22 16:43:54 · 117 阅读 · 0 评论