
JVM虚拟机
文章平均质量分 79
去自经年
这个作者很懒,什么都没留下…
展开
-
JVM学习笔记
一.Java的内存模型 程序计数器:一块比较小的内存区域,指向当前所执行的字节码。如果线程正在执行一个Java方法,这个计数器记录正在执行的虚拟机字节码指令的地址,如果执行的是Native方法,这个计算器值为空。 Java虚拟机栈:线程私有的,其生命周期和线程一致,每个方法执行都创建一个栈帧用于存储局部变量表,操作数栈,动态链接,方法出口等信息。 本地方法栈:与虚拟机栈功能类似,只不过虚拟机栈原创 2017-04-18 14:06:55 · 258 阅读 · 0 评论 -
JVM内存模型
程序计数器:多线程时,当线程数超过CPU数量或CPU内核数量,线程之间就要根据时间片轮询抢夺CPU时间资源。因此每个线程要有一个独立的程序计数器,记录下一条要运行的指令。线程私有的内存区域,如果执行的是Java方法,计数器记录正在执行的Java字节码地址,如果执行的是native方法,则计数器为空虚拟机栈:线程私有的,与线程在同一时间创建,管理Java方法执行的内存模型原创 2017-04-18 14:17:39 · 233 阅读 · 0 评论 -
类加载全过程
JVM判断并装载类的过程类从.java文件到实际加载到内存的过程:.java文件 -> 通过你的JDK环境相关指令编译 -> .class文件 -> JVM初始化之后,如果有类的执行、调用等相关操作,JVM就会将.class文件加载到内存中,并开始下面的一系列处理:(链接->初始化)一.关于ClassLoderClassLoader是Java用于加载原创 2017-04-18 14:19:58 · 296 阅读 · 0 评论 -
java虚拟机类加载机制
虚拟机类加载机制:虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的java类型,java语言中,类型的加载和连接过程是在程序运行期间完成的。类的生命周期:加载 loading验证 verification准备 preparation解析 resolution初始化 initialization使用原创 2017-04-18 14:26:50 · 234 阅读 · 0 评论 -
JVM虚拟机工作原理
一,类加载器 1.层级结构 类加载器被组织成一种层级结构关系,也就是父子关系,其中,BootStrap是所有类加载器的父类,如下图所示: BootStrap classloader 当运行java虚拟机时,这个类加载器被创建,它加载一些基本的java API,包括Object这个类,需要注意的是,这个类加载器不是java语言写的,而是C/C++语言写的 Extension classloa原创 2017-04-19 17:13:08 · 494 阅读 · 0 评论 -
类加载全过程
JVM判断并装载类的过程 类从.java文件到实际加载到内存的过程: .java文件 -> 通过你的JDK环境相关指令编译 -> .class文件 -> JVM初始化之后,如果有类的执行、调用等相关操作,JVM就会将.class文件加载到内存中,并开始下面的一系列处理:(链接->初始化)一.关于ClassLoderClassLoader是Java用于加载类的一个机制。等到程序运行时,JVM先初始原创 2017-04-25 10:43:39 · 324 阅读 · 0 评论