促使多线程出现的因素: 资源利用比如阻塞io,等待的时间让线程去做其他事情,提高利用率 公平多个用户和程序可能对机...[作者空间]
每一个方法从调用开始至执行完成的过程,都对应着一个栈帧在虚拟机栈里面从入栈到出栈的过程。每一个栈帧都包括了局部变量...[作者空间]
虚拟机设计团队把类加载阶段中的“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作放到Java虚拟机外部去...[作者空间]
接下来我们详细讲解一下Java虚拟机中类加载的全过程,也就是加载、验证、准备、解析和初始化这5个阶段所执行的具体动...[作者空间]
1)遇到new、getstatic、putstatic或invokestatic这4条字节码指令时,如果类没有进行...[作者空间]
Java技术体系中所提倡的自动内存管理最终可以归结为自动化地解决了两个问题:给对象分配内存以及回收分配给对象的内存...[作者空间]
如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。Java虚拟机规范中对垃圾收集器应该如何实...[作者空间]
枚举根结点 可达性算法是相当耗时的,以下两点说明 从可达性分析中从GCRoots节点找引用链这个操作为例,可作为G...[作者空间]
标记-清除算法 算法分为“标记”和“清除”两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的...[作者空间]
java堆里存着几乎所有的对象,垃圾收集器要判断,哪些对象是存活的,哪些是死亡的(没有被引用的对象)即需要被回收的...[作者空间]
建立对象是为了使用对象,我们的程序通过栈上的refrence引用来操作堆里的具体对象。由于refrence类型在j...[作者空间]
在HotSpot虚拟机中,对象的内存布局分为三块区域:对象头(Object Header)、实例数据(Instan...[作者空间]
我们了解虚拟机内存划分的人,都知道对象的内存分配几乎都是在堆上的,这一点在java虚拟机规范中的描述是:所有的...[作者空间]