JVM
qq_26807245
这个作者很懒,什么都没留下…
展开
-
JVM-HotSpot虚拟机-即时编译器、编译优化
JIT简介JIT(just in time)编译器,也就是即时编译器(它把字节码转换为可执行的机器码),能够加速java程序的执行速度。为什么JIT编译器能够加速java程序的执行速度呢?首先我们要知道,通常javac将程序源代码编译,转换成java字节码(.java文件编译转换成.class文件,这也是我们通常意义上所理解的编译)。但是字节码不是机器语言,想要让机器执行,还需要通过JVM来解释字...转载 2018-06-28 11:51:42 · 813 阅读 · 0 评论 -
Java的类加载机制
1、什么是类加载在我们使用一个类之前,JVM需要将该类的字节码文件(.class文件)中的二进制数据从网络,磁盘或其他来源加载到内存中,将其放在运行时数据区的方法区内,然后再堆创建一个java.lang.Class的对象。...转载 2018-07-04 14:52:13 · 460 阅读 · 0 评论 -
Java内存模型
基础并发编程模型的分类并发编程中需要处理的两个关键的问题: 线程和线程之间是如何通信的、线程和线程之间是如何同步的。通信通信是指线程之间通过什么机制交换信息。在命令式编程中,线程通信有两种机制:共享内存和消息传递。在共享内存的并发模型里,线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态进行隐式通信。在消息传递的并发模型里,线程之间没有公共状态,线程之间必须通过明确的发送消息来进行显式...转载 2018-06-14 17:04:40 · 195 阅读 · 0 评论 -
JVM内存结构
JVM内存结构主要由三大块:堆内存,方法区和栈。堆内存:jvm管理的内存的最大的一块,在虚拟机启动的时候创建,该区域唯一的目的就是为了存放对象实例,几乎所有的对象实例都在这里分配(该内存区域存放了对象实例和数组(所有new的对象))。堆由年轻代和老年代组成,年轻代又分为三部分,eden空间,from survivor空间,to survivor空间,默认的年轻代按照8:1:1分配。年轻代:程序新创...转载 2018-06-14 17:02:41 · 116 阅读 · 0 评论