jvm
lightj1996
这个作者很懒,什么都没留下…
展开
-
垃圾回收相关概念
返回主博客 System.gc()的理解 通过System.gc()或者Runtime.getRuntime().gc(),可以显示触发FullGC,同时对年代和新生代的回收,尝试释放被丢弃对象的占用的内存。 System.gc() 附带一个免责声明,无法保证及时进行GC,它只是通知JVM,我们希望它进行一次GC。 一般GC需要JVM调用,我们无须手动触发,除非我们在编写性能基准测试。 当我们调用System.runFinalization() 会强制调用失去引用的对象的finalize()方法。原创 2020-07-09 00:11:53 · 140 阅读 · 0 评论 -
垃圾回收相关算法
标记阶段: 引用技术算法。 标记阶段:可达性分析算法。 对象的finalization机制 MAT与Jprofiler的GC Roots溯源 清除阶段:标记清除算法 清除阶段:复制算法 清除阶段: 标记压缩算法 小结 分代收集算法 增量收集算法、分区算法 垃圾回收相关概念 垃圾回收器 ...原创 2020-07-06 22:40:57 · 227 阅读 · 0 评论 -
JVM深度理解
为什么要有JVM? java区别于C和C++就在于,java是跨平台的,java程序员不用手动释放内存。所以java语言编译之后是不可以直接生成二进制的可执行文件,C和C++编译后的可执行文件是耦合平台的。因此java编译必须先生成一个中间产物,即class文件。存在class文件的原因就在于: 1、java不可直接生成二进制可执行文件。 2、java执行中依赖的指令集架构是基于栈的指令集架构。程序在运行时是依赖对于栈的操作的。就好比我们在科学计算器中输入一串式子:(((1+2)*(2+3)+4...原创 2020-07-02 10:53:30 · 516 阅读 · 3 评论