JVM虚拟机
北漂的橙子
这个作者很懒,什么都没留下…
展开
-
JVM虚拟机知识整理
Java内存申请: 1.静态内存:编译时就能够确定的内存就是静态内存,内存是固定的,系统一次性分配,比如int内型; 2.动态内存:就是程序执行时才知道要分配的存储空间大小,比如Java对象的内存空间。 垃圾回收:Java堆和方法区不一样,我们只有在程序运行期间才知道会创建那些对象,所以这部分的内存的分配和回收都是动态的。一版我们所说的垃圾回收也是针对的这一部分。 总之St...原创 2019-01-10 21:58:55 · 462 阅读 · 0 评论 -
JVM结构、GC工作机制详解
JVM结构、内存分配、垃圾回收算法、垃圾收集器。下面我们一一来看。 一、JVM结构 根据《java虚拟机规范》规定,JVM的基本结构一般如下图所示: 从左图可知,JVM主要包括四个部分: 1.类加载器(ClassLoader):在JVM启动时或者在类运行时将需要的class加载到JVM中。(右图表示了从java源文件到JVM的整个过程,可配合理解。 关于类的加载机制,可以参考http:...转载 2019-01-10 22:23:17 · 336 阅读 · 0 评论 -
类加载
一、概述: 类加载机制:校验,转换解析和初始化,最终形成可被虚拟机使用的Java类型,这就是虚拟机的类加载机制。 二、类加载的生命周期: 加载——>验证——>准备——>解析——>初始化——>使用——>卸载 其中验证,准备和解析他们合称为链接过程。 三、加载: 1、通过类的全限定名获取该类的的...原创 2019-02-15 10:20:26 · 122 阅读 · 0 评论 -
Java 虚拟机
一.运行时数据区域 Java虚拟机管理的内存包括几个运行时数据内存:方法区、虚拟机栈、堆、本地方法栈、程序计数器,其中方法区和堆是由线程共享的数据区,其他几个是线程隔离的数据区。 1.1程序计数器 程序计数器是一块较小的内存,他可以看做是当前线程所执行的行号指示器。字节码解释器工作的时候就是通过改变这个计数器的值来选取下一条需要执行的字节码的指令,分支、循环、跳转、异常处理、线程恢复等...转载 2019-02-19 14:57:37 · 109 阅读 · 0 评论