JVM
文章平均质量分 79
有趣的难受
你对这个世界有多大的认知,就决定你能挣多少钱。
展开
-
jvm 卡表
我们知道,JVM在进行垃圾收集时,需要先标记所有可达对象,然后再清除不可达对象,释放内存空间。那么,如何快速的找到所有可达对象呢?最简单粗暴的实现,就是每次进行垃圾收集时,都对整个堆中的所有对象进行扫描,找到所有存活对象。逻辑是简单,但性能比较差。简单粗暴的实现方式,通常都是不可取的。那JVM是如何实现快速标记可达对象的?答案是GC Roots。GC Roots是垃圾收集器寻找可达对象的起点,通过这些起始引用,可以快速的遍历出存活对象。GC Roots最常见的是静态引用和堆栈的局部引用变量。然而,这原创 2022-05-27 10:55:06 · 555 阅读 · 0 评论 -
java 强应用 软应用 弱引用 虚引用
强 大于 软 大于 弱 大于虚强引用object jvm 回收机制软引用可以和一个引用队列(ReferenceQueue)联合使用,如果软引用所引用的对象被垃圾回收器回收,Java虚拟机就会把这个软引用加入到与之关联的引用队列中弱引用...原创 2020-08-27 14:19:01 · 116 阅读 · 0 评论 -
对象头
在HotSpot虚拟机中,对象在内存中存储的布局可以分为3块区域:对象头(Headr)实例数据(instunce Data)和对齐填充(Padding)HotSpot 上虚拟机的对象头包括两部分信息,第一部分用于存储对象自身的运行时数据。如哈希码(HashCode也就是为什么java代码取hashcode很快的原因). GC分代年龄、锁状态标志(线程使用到),线程持有的锁、偏向线程ID、偏向...原创 2019-02-18 17:20:49 · 176 阅读 · 0 评论 -
深入理解java虚拟机 (周志明)JVM个人总结
Jvmjava虚拟机规范 周志明JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java...原创 2019-02-13 19:17:13 · 6862 阅读 · 0 评论 -
osi7层 java 4层
三次握手 4次挥手4次挥手就是fin 释放资源原创 2019-08-13 23:05:58 · 117 阅读 · 1 评论