jvm
文章平均质量分 86
吾已六
这个作者很懒,什么都没留下…
展开
-
深入理解Java虚拟机学习笔记-3.JVM性能监控及故障分析工具
JVM性能监控及故障分析工具1.概要JDK官方提供了不少好用的JAVA故障处理工具,JDK的命令行工具在JDK的bin目录下供用户使用。2. jps2.1 简介 jps是jdk提供的查看当前java进程的工具,简单看作为JavaVirtual Machine Process Status Tool。 命令格式:jps [options] [hostid] options 参数详解: 参数原创 2017-07-29 13:31:28 · 1407 阅读 · 0 评论 -
深入理解Java虚拟机学习笔记-2.JVM垃圾回收
JVM垃圾回收 1.简介 jvm要进行垃圾回收粗略分为两个步骤:找出需要清理的内存(无效的内存区域) , 清理无效的内存区域 程序计数器、虚拟机栈、本地方法栈三个区域随线程而生,随线程而灭;栈中的栈帧随着方法的进入和退出而有条不紊地执行着出栈和入栈操作。每一个栈帧中分配多少内存基本上是在类结构确定下来时就已知的(尽管在运行期会由JIT编译器进行一些优化,但在本章基于概念模型的讨原创 2017-07-27 22:18:04 · 591 阅读 · 0 评论 -
深入理解Java虚拟机学习笔记-1.JVM内存模型
JVM内存模型1.内存模型结构图 名称 特征 作用 配置参数 异常 程序计数器 占用内存小,线程私有, 生命周期与线程相同 大致为字节码行号指示器 无 无 虚拟机栈 线程私有,生命周期与线程相同,使用连续的内存空间 Java 方法执行的内存模型,存储局部变量表、操作栈、动态链接、方法出口等信息 -Xss OutOfMemoryError,St原创 2017-07-27 20:00:02 · 567 阅读 · 0 评论 -
深入理解java虚拟机学习笔记-5.内存与线程
内存与线程1 内存1.1 内存一致性由于计算机的存储设备与处理器的运算速度之间有着几个数量级的差距,所以现代计算机系统都不得不加入一层读写速度尽可能接近处理器运算速度的高速缓存(Cache)来作为内存与处理器之间的缓冲:将运算需要使用到的数据复制到缓存中,让运算能快速进行,当运算结束后再从缓存同步回内存之中,这样处理器就无须等待缓慢的内存读写了。基于高速缓存的存储交互很好地解决了处理器与内存的速度矛原创 2017-08-06 22:26:31 · 449 阅读 · 0 评论 -
深入理解java虚拟机学习笔记-4.java类加载机制
类加载机制1. 类的加载过程类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中准备、验证、解析3个部分统称为连接(Linking)。如图所示:原创 2017-07-29 20:17:21 · 383 阅读 · 0 评论 -
深入理解Java虚拟机学习笔记2.1-G1垃圾回收
G1 GC是Jdk7的新特性之一、Jdk7+版本都可以自主配置G1作为JVM GC选项;作为JVM GC算法的一次重大升级、DK7u后G1已相对稳定、且未来计划替代CMS、所以有必要深入了解下:不同于其他的分代回收算法、G1将堆空间划分成了互相独立的区块。每块区域既有可能属于O区、也有可能是Y区,且每类区域空间可以是不连续的(对比CMS的O区和Y区都必须是连续的)。这种将O区划分成多块的理念源于:当转载 2017-09-11 20:58:39 · 337 阅读 · 0 评论