java相比c++最大的进步就是在于增加了gc不用开发者手动分配和回收内存,在虚拟机自动内存管理机制的帮助下,不再需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄漏和内存溢出问题,在这个过程中控制权转移给了虚拟机VM自动完成,但是这仍然无法避免内存泄露和溢出的问题,而出了OOM如何排查解决这类问题呢?本文带您一起来探寻jvm如何自动分配回收内存、如何避开内存泄露问题和解决OOM的思路。
java虚拟机
jvm内存模型
垃圾收集器
PGC、 C4收集器
gc有哪些类型
一个对象在何时会被回收
jvm的相关工具
什么时候会出现OOM
出现OOM如何排查问题
参考资料
《深入理解java虚拟机(第三版)》