JVM

问题精选-JVM

2021-02-27  本文已影响0人  AC编程

一、内存模型以及分区,需要详细到每个区放什么

JVM 分为堆区、栈区、方法区、本地方法栈、程序计数器

二、GC 的两种判定方法

引用计数法:指的是如果某个地方引用了这个对象就+1,如果失效了就-1,当为 0 就会回收,但是JVM 没有用这种方式,因为无法判定相互循环引用(A 引用 B,B 引用 A)的情况。

可达性算法(引用链法):通过一种 GC ROOT 的对象来判断,如果有一条链能够到达 GC ROOT 就说明不需要回收,不能到达 GC ROOT 就说明可以回收。

三、简述 Java 垃圾回收机制

在 Java 中,程序员是不需要显示的去释放一个对象的内存的,而是由虚拟机自行执行。在JVM 中,有一个垃圾回收线程,它是低优先级的,在正常情况下是不会执行的,只有在虚拟机空闲或者当前堆内存不足时,才会触发执行,扫描那些没有被任何引用的对象,并将它们添加到要回收的集合中,进行回收。

上一篇下一篇

猜你喜欢

热点阅读