首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
jvm
订阅
dwyane12
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
JVM(六)为什么新生代有两个Survivor分区?
本文会使用排除法的手段,来讲解新生代的区域划分,从而让读者能够更清晰的理解分代回收器的原理,在开始之前我们先来整体认识一下分代收集器。 可以看出 Eden 和 Survivor 分区的默认比例是 8:1:1,这个值可以通过:–XX:SurvivorRatio 设定,默认值: –…
JVM系列(三) - JVM对象探秘
对于 JVM 运行时区域有了一定了解以后,本文将更进一步介绍虚拟机内存中的数据的细节信息。以JVM虚拟机(Hotspot)的内存区域Java堆为例,探讨Java堆是如何创建对象、如何布局对象以及如何访问对象的。 (一). 对象的创建 1. new关键字 这是最常见也是最简单的创…
JVM系列(二) - JVM内存区域
JVM内存区域包括PC计数器、Java虚拟机栈、本地方法栈、堆、方法区、运行时常量池和直接内存。 本文主要介绍各个内存区域的作用和特性,同时分别阐述各个区域发生内存溢出的可能性和异常类型。 (一). JVM内存区域 Java虚拟机执行Java程序的过程中,会把所管理的内存划分为…
JVM(五)垃圾回收器的前世今生
如果垃圾回收的算法属于内存回收的方法论的话,那本文讨论的垃圾回收器就属于内存回收的具体实现。 因为不同的厂商(IBM、Oracle),实现的垃圾回收器各不相同,而本文要讨论的是 Oracle 的 HotSpot 虚拟机所使用的垃圾回收器。 其中相互连线的垃圾回收器,表示可以相互…
JVM(三)对象的生死判定和算法详解
导读:对象除了生死之外,还有其他状态吗?对象真正的死亡,难道只经历一次简单的判定?如何在垂死的边缘“拯救”一个将死对象?判断对象的生死存活都有那些算法?本文带你一起找到这些答案。 在正式开始之前,我们先来了解一下垃圾回收。 GC: Garbage Collection,中文翻译…
JVM系列(六) - JVM垃圾回收器
在之前的几篇博客中,我们大致介绍了,常见的 垃圾回收算法 及 JVM 中常见的分类回收算法。这些都是从算法和规范上分析 Java 中的垃圾回收,属于方法论。在 JVM 中,垃圾回收的具体实现是由 垃圾回收器(Garbage Collector)负责的。 在了解 垃圾回收器 之前…
JVM系列之GC
谈到JVM,大家都知道GC(Garbage Collection),GC这个话题说浅了就一句话--JVM自动垃圾收集,说深了就无止尽了,回收算法,各种收集器,gc类型,gc触发点....等等,作者也是略懂皮毛,这里给大家推荐一个知乎上比较活跃的JVM大牛,RednaxelaFX…
java字节码是如何被JVM执行的
在上一篇中介绍了class文件的组成,也就是字节码文件的结构,这一篇介绍jvm是如何执行字节码的。本篇介绍的jvm执行引擎以jvm规范为准,并非具体的jvm实现。 程序计数器是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器,线程私有。 与程序计数器一样,Ja…
JVM 类加载机制及双亲委派模型
如上图所示,描述了类的生命周期。其中加载、验证、准备、初始化、卸载这五个动作是存在先后顺序的,而解析阶段有可能在初始化之后完成的。这些动作中通常都是互相交叉混合进行的。下面我们主要探讨加载、验证、准备、解析、初始化这五个步骤。 看到Constant Pool也就是常量池中有22…
JVM系列(五) - JVM垃圾回收算法
第二篇介绍了Java内存运行时区域,其中程序计数器、虚拟机栈、本地方法栈 三个区域随线程而生,随线程而灭;栈中的栈帧随着方法的进入和退出而有条不紊地执行着出栈和入栈操作。每一个栈帧中分配多少内存基本上是在类结构确定下来时就已知的,因此这几个区域的内存分配和回收都具备确定性。在这…