![](https://img-blog.csdnimg.cn/20201123163042533.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
尚硅谷康师傅JVM
文章平均质量分 93
问好了路,可是走着走着,又忘了路。
会飞的企鹅0v0
这个作者很懒,什么都没留下…
展开
-
方法区 JVM第七章
七、方法区1、栈、堆、方法区的交互关系从线程共享与否的角度来看ThreadLocal:如何保证多个线程在并发环境下的安全性?典型应用就是数据库连接管理,以及独立会话管理栈、堆、方法区的交互关系下面就涉及了对象的访问定位Person 类的 .class 信息存放在方法区中person 变量存放在 Java 栈的局部变量表中真正的 person 对象存放在 Java 堆中在 person 对象中,有个指针指向方法区中的 person 类型数据,表明这个 person 对象是用方法区原创 2021-03-08 15:54:42 · 292 阅读 · 0 评论 -
堆
六、堆1、堆的核心概述1.1 堆内存一个JVM实例只存在一个堆内存,堆也是Java内存管理的核心区域。Java堆区在JVM启动的时候即被创建,其空间大小也就确定了,堆是JVM管理的最大一块内存空间,并且堆内存的大小是可以调节的。-Xms10m -Xmx20m: 堆内存10m,最大堆内存20m《Java虚拟机规范》规定,堆可以处于物理上不连续的内存空间中,但在逻辑上它应该被视为连续的。所有的线程共享Java堆,在这里还可以划分线程私有的缓冲区(Thread Local Alloc原创 2021-01-11 15:06:32 · 1140 阅读 · 0 评论 -
本地方法栈
五、本地方法栈1、本地方法接口1.1 什么是本地方法?简单地讲,一个Native Method是一个Java调用非Java代码的接囗。一个Native Method是这样一个Java方法:该方法的实现由非Java语言实现,比如C。这个特征并非Java所特有,很多其它的编程语言都有这一机制,比如在C++中,你可以用extern 告知C++编译器去调用一个C的函数。“A native method is a Java method whose implementation is provided b原创 2020-12-17 17:11:48 · 136 阅读 · 0 评论 -
虚拟机栈
目录四、虚拟机栈1、虚拟机栈的基本内容1.1 Java虚拟机栈是什么1.2 虚拟机栈的生命周期1.3 作用1.4 栈的优点1.5 虚拟机栈的异常2、栈的存储单位-栈帧2.1 栈存储什么?2.2 栈的运行原理2.3 栈帧的内部结构3、栈帧__局部变量表3.1 局部变量表3.2 关于Slot的理解3.3、Slot 的重复利用4、栈帧__操作数栈4.1 操作数栈特点4.2 ++i 与 i++ 的区别4.3 栈顶缓存技术5、栈帧__动态链接6、方法的调用6.1 静态链接与动态链接6.2 早期绑定与晚期绑定6.3原创 2020-12-03 14:30:23 · 298 阅读 · 0 评论 -
程序计数器
目录三、程序计数器1、PC寄存器概述2、代码示例3、两个面试题4、CPU时间片三、程序计数器Program Counter Register1、PC寄存器概述java虚拟机规范网址:https://docs.oracle.com/javase/specs/jvms/se8/html/index.htmlJVM中的程序计数寄存器(Program Counter Register)中,Register的命名源于CPU的寄存器,寄存器存储指令相关的现场信息。CPU只有把数据装载到寄存器才能够运原创 2020-12-03 14:00:55 · 178 阅读 · 0 评论 -
运行时数据区
目录二、运行时数据区1、运行时数据区结构1.1 内存与运行时数据区1.2 线程的内存空间2、线程2.1 线程2.2 JVM 系统线程二、运行时数据区1、运行时数据区结构1.1 内存与运行时数据区内存内存是非常重要的系统资源,是硬盘和CPU的中间仓库及桥梁,承载着操作系统和应用程序的实时运行。JVM内存布局规定了Java在运行过程中内存申请、分配、管理的策略,保证了JVM的高效稳定运行。不同的JVM对于内存的划分方式和管理机制存在着部分差异。结合JVM虚拟机规范,来探讨一下经典的JVM内存布原创 2020-12-01 16:41:38 · 105 阅读 · 0 评论 -
类加载子系统
一、类加载子系统1、内存结构1.1 JVM架构图:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HK3AMMW6-1606188154188)(image/第02章_JVM架构-简图.jpg)]OutOfMemoryErrorStackOverflowErrorGC(垃圾回收)程序计数器×××虚拟机栈√(栈可扩展时)√×本地方法栈√(栈可扩展时)√×堆√×√方法区√×√1.2 完整框图原创 2020-11-28 14:12:43 · 155 阅读 · 2 评论 -
前言 JVM 架构
目录前言1、JVM架构模型1.1 基于栈的指令集架构1.2 基于寄存器的指令级架构1.3 两种架构的举例1.4 JVM 架构总结2、JVM 生命周期1、虚拟机的启动2、虚拟机的执行3、虚拟机的退出前言1、JVM架构模型 Java编译器输入的指令流基本上是一种基于栈的指令集架构,另外一种指令集架构则是基于寄存器的指令集架构。具体来说:这两种架构之间的区别:1.1 基于栈的指令集架构基于栈式架构的特点:设计和实现更简单,适用于资源受限的系统;避开了寄存器的分配难题:使用零地址指令方式分原创 2020-11-23 16:42:27 · 94 阅读 · 0 评论