
Java虚拟机
大鹏小站
一个快乐敲代码的程序猿
展开
-
JVM运行原理详解
1.JVM简析: 作为一名Java使用者,掌握JVM的体系结构也是很有必要的。 说起Java,我们首先想到的是Java编程语言,然而事实上,Java是一种技术,它由四方面组成:Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口(Java API)。它们的关系如下图所示: Java平台由Java虚拟机和Java应用程序接口搭建,Java语言则是进入这个...转载 2018-06-20 16:54:29 · 224 阅读 · 0 评论 -
Java内存管理:Java内存区域 JVM运行时数据区
在前面的一些文章了解到javac编译的大体过程、Class文件结构、以及JVM字节码指令。 下面我们详细了解Java内存区域:先说明JVM规范定义的JVM运行时分配的数据区有哪些,然后分别介绍它们的特点,并指出给出一些HotSpot虚拟机实现的不同点和调整参数。1、Java内存区域概述1-2、C/C++与Java程序开发的内存管理 在内存管理领域,C/C++程序开发与Ja...转载 2018-06-24 11:55:00 · 277 阅读 · 0 评论 -
Java虚拟机垃圾回收(一) 基础 回收哪些内存/对象 引用计数算法 可达性分析算法 finalize()方法 HotSpot实现分析
Java虚拟机垃圾回收(一) 基础 回收哪些内存/对象 引用计数算法 可达性分析算法 finalize()方法 HotSpot实现分析 在《Java内存区域 JVM运行时数据区》中了解到各数据区有些什么特点、以及相关参数的调整,知道了:程序计数器、虚拟机栈、本地方法栈这3个区域是随线程而生而灭的,内存分配和回收都具备确定性,而Java堆和方法区则不一样,各线程共享,在运行时内...转载 2018-06-24 12:41:38 · 199 阅读 · 0 评论 -
Java虚拟机垃圾回收(二) 垃圾回收算法 标记-清除算法 复制算法 标记-整理算法 分代收集算法 火车算法
Java虚拟机垃圾回收(二) 垃圾回收算法 标记-清除算法 复制算法 标记-整理算法 分代收集算法 火车算法 在《Java虚拟机垃圾回收(一) 基础》中了解到如何判断对象是存活还是已经死亡? 介绍了垃圾回收基础算法:引用计数算法、可达性分析算法,以及HotSpot虚拟机中实现对象可达性分析的一些问题。 下面先来了解Java虚拟机垃圾回收的几种常见算法:标记-清除算法、复制算...转载 2018-06-24 12:42:43 · 262 阅读 · 0 评论 -
Java虚拟机垃圾回收(三) 7种垃圾收集器 主要特点 应用场景 设置参数 基本运行原理
Java虚拟机垃圾回收(三) 7种垃圾收集器 主要特点 应用场景 设置参数 基本运行原理 在《Java虚拟机垃圾回收(一) 基础》中了解到如何判断对象是存活还是已经死亡?在《Java虚拟机垃圾回收(二) 垃圾回收算法》了解到Java虚拟机垃圾回收的几种常见算法。 下面先来了解HotSpot虚拟机中的7种垃圾收集器:Serial、ParNew、Parallel Scaveng...转载 2018-06-24 12:43:34 · 210 阅读 · 0 评论 -
java中新生代和老年代
1.为什么会有年轻代我们先来屡屡,为什么需要把堆分代?不分代不能完成他所做的事情么?其实不分代完全可以,分代的唯一理由就是优化GC性能。你先想想,如果没有分代,那我们所有的对象都在一块,GC的时候我们要找到哪些对象没用,这样就会对堆的所有区域进行扫描。而我们的很多对象都是朝生夕死的,如果分代的话,我们把新创建的对象放到某一地方,当GC的时候先把这块存“朝生夕死”对象的区域进行回收,这样就会腾出很大...转载 2018-06-25 21:26:49 · 5652 阅读 · 0 评论