随笔分类 -  JVM

摘要:注意 博主是初学者,此文包含个人理解,谨慎阅读 乐观锁与悲观锁 悲观锁 总是认为临界资源会被多个线程同时争用,于是在使用之前,先对资源加锁,使其它线程阻塞,使用完成之后再释放资源 乐观锁 认为临界资源大多数时间不会被多个线程同时争用,在进行修改操作时,通过某些手段,检测有没有其他线程使用了此共享资源 阅读全文
posted @ 2020-04-04 14:06 断腿三郎 阅读(1010) 评论(0) 推荐(0)
摘要:本文仅作为复习清单使用 类生命周期 加载 验证 准备 解析 初始化 使用 卸载 常量优化 常量传播 常量折叠 类的加载 通过全限定名获取二进制字节流 将静态存储结构转化为方法区的运行时数据结构 生成Class对象 验证过程(可关闭) 文件格式验证 元数据验证 字节码验证 符号引用验证 准备 分配内存 阅读全文
posted @ 2020-03-28 12:08 断腿三郎 阅读(189) 评论(0) 推荐(0)
摘要:本文仅作为复习清单使用 Class结构 1.魔数(第1~4字节) 固定为0xCOFEBABE 2.版本号(第5~8字节) 第5,6字节:次版本号,JDK2~JDK12一直置零 第7,8字节:主版本号,计数从45开始 3.常量池 索引从1开始 第9,10字节 常量池计数值 接下来是常量表 4.访问标志 阅读全文
posted @ 2020-03-27 21:33 断腿三郎 阅读(263) 评论(0) 推荐(0)
摘要:一.经典的垃圾收集器: Serial收集器: (1)最基础最悠久的收集器 (2)工作在新生代:复制算法 (3)Stop the World ParNew收集器 (1)多线程版的Serial (2)可以与CMS配合使用 (2)工作在新生代 Parallel Scavenge收集器 (1)和前两款收集器 阅读全文
posted @ 2020-03-27 15:08 断腿三郎 阅读(312) 评论(0) 推荐(0)
摘要:本文仅作为复习清单使用 运行时数据区域 线程私有 :程序计数器,JAVA虚拟机栈,本地方法栈 线程共享 :堆,方法区,运行时常量池,直接内存 内存分配方式 指针碰撞 空闲列表 本地线程分配缓冲 堆在某种程度上,也存在线程私有的部分哦 对象的内存布局 对象头 : Mark word,类型指针 实例数据 阅读全文
posted @ 2020-03-27 00:12 断腿三郎 阅读(297) 评论(0) 推荐(0)
摘要:符号引用只是一些符号,包含在字节码文件的常量池中 它主要包括: 在该类中,出现过的各类包,类,接口,字段,方法等元素的全限定名 有java类定义如下: 编译后,经javap工具反编译,常量池内容如下 反编译结果中,我们可以看到几个典型的符号引用,比如第一项为实例构造器,第四项为该类方法调用的其他方法 阅读全文
posted @ 2020-03-08 16:50 断腿三郎 阅读(4134) 评论(0) 推荐(0)