
jvm
分享java技术瑞哥
这个作者很懒,什么都没留下…
展开
-
java堆栈详解
java虚拟机栈 栈是线程私有,他的生命周期和线程的相同。用于存储局部变量,操作数栈,动态链接,方法出口等。他会抛出两种异常,stackoverflowerror异常和outofmemoryerror异常。 java虚拟机堆 堆是线程共有的一块内存区域,在虚拟机启动时创建,为了存放对象实例。java堆是垃圾收集器管理的主要区域,因此很多时候被称为“GC堆”。java堆可以处于物理上不连续的内原创 2018-01-22 13:42:04 · 788 阅读 · 0 评论 -
java gc垃圾回收机制主要回收堆内的对象
1.程序的计数器,虚拟机栈,本地方法栈3个区域随线程而生,随线程而灭。 堆内的对象首先要判断是否还存活。 2.使用可达性分析算法,以一系列GC Roots对象为起点,从这些节点开始向下搜索,搜索所走过的路径称为引用链,当一个对象到GC Roots没有任何引用链相连时,则证明此对象不可用,这些堆对象将会被gc回收。 GC Roots的对象包括: 虚拟机栈、方法区中类静态属性引用对象、方法区中原创 2018-01-26 15:30:41 · 1235 阅读 · 0 评论