JVM虚拟机
文章平均质量分 63
悟道|养家
中年搬砖男
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Tomcat服务停滞问题分析:内存泄漏导致GC抖动及线程阻塞(内存泄漏导致的渐进式服务退化)
因渐进式内存泄漏导致的GC抖动型JVM假死原创 2023-07-17 16:00:21 · 925 阅读 · 0 评论 -
垃圾收集算法
1.标记清除算法:标记出来需要清楚的对象,然后进行清楚,并造成空间的不连续2.复制算法:将内存分为2个区,每次只使用一个区域,把S1区域的存活对象,复制到S2中,如此反复进行,有点可以保证空间的连续,但是浪费50%的空间3.标记整理算法:可以理解为标记清除-整理算法,避免了标记清除算法带来的空间的不连续,缺点是比较耗时3.分代收集算法:现在商业虚拟机采用的方法,将内存分为新生代和老年代...原创 2020-02-22 22:27:30 · 182 阅读 · 0 评论 -
Java中的引用类型
参考链接原创 2020-02-22 21:52:52 · 247 阅读 · 0 评论 -
java.lang.OutOfMemoryError总结(待续。。。)
总结目的通过代码验证java虚拟机运行时区域存储的内容; 工作中如果遇到内存溢出问题,能够根据反馈的异常信息快速判断哪个内存区域发生溢出Java堆内存溢出报错信息:java.lang.OutOfMemoryError:Java heap space原因可能是内存泄漏或者创建太多对象导致内存不足Java虚拟机栈和本地方法区栈报错信息:1.stackOverFlowErro...原创 2020-02-22 21:36:22 · 240 阅读 · 0 评论 -
JAVA虚拟机发生GC的过程简要分析(待续...)
了解JVM发生GC的原因以及过程,才可以更加针对的对虚拟机进行内存分配,从而减少full gc,避免造成系统卡顿甚至系统崩溃FULLGC带来的危害(STW)在发生FULL GC的时候,意味着JVM会安全的暂停所有正在执行的线程(Stop The World),来回收内存空间,在这个时间内,所有除了回收垃圾的线程外,其他有关JAVA的程序,代码都会静止,反映到系统上,就会出现系统响应大幅度...原创 2020-02-20 22:10:26 · 445 阅读 · 1 评论 -
GC:可达性分析算法
可达性分析算法之前有一个叫引用计数法,原理非常简单如果一个对象没有任何引用与之关联,基本上对象不可能在其他地方用的上,这个对象就成为可被回收的对象,但是这个方法虽然非常简单,而且高效,但是它无法解决循环调用的问题,如下图所示:public class Main { public static void main(String[] args) { Demo d1 = n...原创 2020-02-20 21:27:55 · 2041 阅读 · 0 评论 -
JVM虚拟机运行时数据区(内存模型)
JDK8 之后的 JVM 内存布局参考链接原创 2020-02-18 22:06:20 · 248 阅读 · 0 评论
分享