
jvm
文章平均质量分 84
Xqhardstudy
这个作者很懒,什么都没留下…
展开
-
JVM-第九章:方法区
前言这次所讲述的是运行时数据区的最后一个部分从线程共享与否的角度来看ThreadLocal:如何保证多个线程在并发环境下的安全性?典型应用就是数据库连接管理,以及会话管理栈、堆、方法区的交互关系下面就涉及了对象的访问定位Person:存放在元空间,也可以说方法区person:存放在Java栈的局部变量表中new Person():存放在Java堆中方法区的理解《Java虚拟机规范》中明确说明:“尽管所有的方法区在逻辑上是属于堆的一部分,但一些简单的实现可能不会选择去进行垃圾收集转载 2021-05-06 22:19:35 · 190 阅读 · 0 评论 -
JVM-第八章:堆
堆的核心概述内存细分设置堆内存大小与OOM年轻代与老年代图解对象分配过程Minor GC Major GC Full GC堆空间分代思想内存分配策略为对象分配内存:TLAB小结堆空间的参数设置堆是分配对象的唯一选择吗...转载 2021-05-05 20:38:11 · 165 阅读 · 0 评论 -
JVM-第七章:本地方法栈
Java虚拟机栈于管理Java方法的调用,而本地方法栈用于管理本地方法的调用。本地方法栈,也是线程私有的。允许被实现成固定或者是可动态扩展的内存大小。(在内存溢出方面是相同的)如果线程请求分配的栈容量超过本地方法栈允许的最大容量,Java虚拟机将会抛出一个stackoverflowError 异常。如果本地方法栈可以动态扩展,并且在尝试扩展的时候无法申请到足够的内存,或者在创建新的线程时没有足够的内存去创建对应的本地方法栈,那么Java虚拟机将会抛出一个outofMemoryError异常。本转载 2021-05-04 21:18:18 · 135 阅读 · 0 评论 -
JVM-第六章:本地方法接口
什么是本地方法为什么要使用Native Method?本地方法栈转载 2021-05-04 21:15:41 · 143 阅读 · 0 评论 -
JVM-第五章:虚拟机栈
虚拟机栈概述背景内存中的堆与栈基本内容面试题:开发中遇到的异常有哪些栈的存储单位栈中存储什么?栈运行原理栈帧的内部结构局部变量表关于Slot的理解静态变量和局部变量的对比操作数栈代码追踪...转载 2021-05-04 21:10:23 · 194 阅读 · 0 评论 -
JVM-第四章:程序计数器
PC Register介绍oracle官网->download->java->jdk->specifications作用举例说明两个常见问题使用PC寄存器存储字节码指令地址有什么用呢?转载 2021-05-02 22:09:33 · 150 阅读 · 0 评论 -
JVM-第三章:运行时数据区概述及线程
线程转载 2021-05-02 22:01:10 · 162 阅读 · 0 评论 -
JVM-第二章:类加载子系统
内存结构概述完整图如下如果自己手写一个Java虚拟机的话,主要考虑哪些结构呢?类加载器执行引擎类加载子系统类加载子系统作用类加载器子系统负责从文件系统或者网络中加载Class文件,class文件在文件开头有特定的文件标识。ClassLoader只负责class文件的加载,至于它是否可以运行,则由Execution Engine决定。加载的类信息存放于一块称为方法区的内存空间。除了类的信息外,方法区中还会存放运行时常量池信息,可能还包括字符串字面量和数字常量(这部分常量信息是转载 2021-05-02 21:54:22 · 140 阅读 · 1 评论