![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
虚拟机
文章平均质量分 93
钰娘娘
学多了感觉有点玄乎,终极问题都回到XX的原理是什么,于是层层dfs,有点探索世界本源的意思了,有点修炼至神的味道。程序员果然是新时代的创始神。
展开
-
《深入理解Java虚拟机》第4章 虚拟机性能监控与故障处理工具-看看虚拟机工具用起来有多简单
上章答案:Java 虚拟机针对不同的区域采取的不同回收策略?程序计数器、虚拟机栈、本地方法栈:采用线程消亡时或者栈帧弹出时回收的方式java堆:死亡对象未覆盖finalize()方法或已调用过的直接回收;覆盖且未调用过finalize()方法的放入F-Queue进行第二次小规模标记,未产生引用链就回收;方法区:常量没有引用可回收,类需要优先考虑Java堆对象、类加载器、Class类引用的回收情况,这三个部分都已经回收,类可以回收。堆区如何判断对象死亡?引用计...原创 2021-12-27 16:14:34 · 416 阅读 · 0 评论 -
《深入理解Java虚拟机》第3章 垃圾收集器与内存分配策略-好家伙,收垃圾也是技术活
目录1 回收范围2 堆区回收2.1 堆区-哪些要回收2.1.1 可以作为GCRoot的节点2.2 堆区-什么时候回收2.3 堆区-回收过程1 回收范围凡是分配了内存的区域,最终都要进行内存回收线程独有的区域:线程消亡,肯定消亡,一定可以回收;超出方法区域、作用域,对应的方法中的局部变量表、操作数栈等自然可以回收(无需过于关注,这部分的回收,基本上编译器已经可以确定)java堆:处于线程共享区,判断回收更困难,需要统一的标准方法区:需要考虑类的回收和常量回收.原创 2021-07-10 22:23:51 · 391 阅读 · 1 评论 -
《深入理解Java虚拟机》第2章 Java内存区域与内存溢出异常 -关于照着操作电脑死机那件事。。。
书中原图:原创 2021-06-17 17:01:05 · 233 阅读 · 1 评论