![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM研究
文章平均质量分 69
摆渡吃猫的鱼
这个作者很懒,什么都没留下…
展开
-
JVM研究笔记六
C语言申请内存:malloc freec/C++ 手动回收内存Java: new?忘记回收多次回收没有任何引用指向的一个对象或者多个对象(循环引用)根据需求进行JVM规划和预调优优化运行JVM运行环境(慢,卡顿)解决JVM运行过程中出现的各种问题(OOM)原创 2024-02-04 17:22:58 · 717 阅读 · 0 评论 -
JVM研究笔记五
提示:结合GC, 一直创建字符串常量,观察堆,和Metaspace。如何证明1.7字符串常量位于Perm,而1.8位于Heap?JVM可以直接访问的内核空间的内存 (OS 管理的内存)NIO , 提高效率,实现zero copy。 取PC中的位置,找到对应位置的指令;原创 2024-02-04 17:22:06 · 233 阅读 · 0 评论 -
JVM研究笔记四
作者:马士兵 http://www.mashibing.com。原创 2024-02-04 17:21:34 · 587 阅读 · 0 评论 -
JVM研究笔记三
协议很多intel 用MESI现代CPU的数据一致性实现 = 缓存锁(MESI …) + 总线锁读取缓存以cache line为基本单位,目前64bytes位于同一缓存行的两个不同数据,被两个不同CPU锁定,产生互相影响的伪共享问题伪共享问题:JUC/c_028_FalseSharing使用缓存行的对齐能够提高效率。原创 2024-02-04 17:21:03 · 254 阅读 · 0 评论 -
JVM研究笔记二
动态语言支持java.lang.invoke.MethodHandle解析的结果为REF_getstatic REF_putstatic REF_invokestatic的方法句柄时,该类必须初始化。–new getstatic putstatic invokestatic指令,访问final变量除外。第一节课遗留问题:parent是如何指定的,打破双亲委派,学生问题桌面图片。–虚拟机启动时,被执行的主类必须初始化。–初始化子类的时候,父类首先初始化。LazyLoading 五种情况。原创 2024-02-04 17:20:31 · 135 阅读 · 0 评论 -
JVM研究笔记一
补齐 0。markword 8个字节。1:句柄池 (指针池)间接指针,节省内存。类型指针 8个字节。实例变量 0。锁的信息(2位 四种组合)JVM参数指定压缩或非压缩。2:直接指针,访问速度快。16字节(压缩 非压缩)如果是数组,数组的长度。老不死 - > Old。原创 2024-02-04 17:18:10 · 149 阅读 · 0 评论