![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
爱吃肥肠的笋子
这个作者很懒,什么都没留下…
展开
-
JVM_垃圾收集器与内存分配策略01
垃圾回收器(GC Garbage Collection)。那些内存是需要回收的什么时候进行回收如何回收有哪些内存需要回收,首先程序计数器、虚拟机栈、本地方法栈这些的生命周期和线程的生命周期是一样的,栈中栈帧是随着方法的进入和退出而执行着入栈和出栈,他们在内存分配和回收都是具有确定性的,因为在方法结束或者线程结束时,内存自然就跟着回收了,所以他们不需要过多的考虑回收的问题。但是Java...原创 2020-03-16 21:56:31 · 76 阅读 · 0 评论 -
JVM_java内存区域
Java内存区域图如下:程序计数器:Java虚拟机栈:和程序计数器一样,是线程私有的,它的生命周期与线程相同。每个方法被执行的时候都会同时创建一个栈帧用于存储局部变量、操作栈、动态链接、方法出口等消息。每一个方法被调用直至执行完成的过程,就对应着一个栈帧在虚拟机中从入栈到出栈的过程。局部变量表存放了编译期可知的各种基本数据类型(boolean、byte、char、short、int...原创 2020-03-16 20:42:10 · 66 阅读 · 0 评论 -
JVM03Java代码执行流程
一、Java的跨平台性Java代码的执行流程jvm运行原理:运行一个HelloWorld的类,运行完毕之后,文件夹里出现HelloWorld.class的文件javac程序是一个Java编译器。它将文件HelloWorld.java编译成HelloWorld.class文件,并发送到java虚拟机。虚拟机执行编译器放在class文件中的字节码。JVM 加载 class 文件的原理机制...原创 2020-03-14 10:03:55 · 118 阅读 · 0 评论 -
JVM04内存结构概述
JVM架构类加载器的子系统:类加载器子系统负责从文件系统或者网络中加载class文件,class文件在文件头有特定的文件标识ClassLoader只负责class文件加载,至于它是否可运行,则由Execution Engine决定加载的类信息存放于一块成为方法区的内存空间。除了类信息外,方法区中还会存放运行时常量池的信息,可能还包括字符串字面量和数字常量(这部分常量信息是Class文件...原创 2020-03-14 09:58:40 · 82 阅读 · 0 评论 -
JVM-程序计数器02
Java虚拟机内存管理方法区:二、程序计数器1.程序计数器的解释:程序计数器(Program Counter Register)是一块较小的内存空间,它可以看做是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里(仅是概念模型,各种虚拟机可能会通过一些更高效的方式去实现),字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程...原创 2020-03-09 16:55:17 · 74 阅读 · 0 评论 -
JVM学习01总体概述
JVM的整体结构HotSpot VM是目前市面上高性能虚拟机的代表作之一,它采用解释器与即时编译器并存的架构Java编译器输入的指令流基本上是一种基于栈的指令架构,另外一种指令集架构则是基于寄存器的指令集架构。一、指令集构建同样执行2+3这样的逻辑操作,其2指令分别如下:1.基于栈的计算流程public class StackStruTest { public static ...原创 2020-03-03 13:49:29 · 110 阅读 · 0 评论