![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM虚拟机
whnrll
只要你现在努力,就为时不晚!
展开
-
理解Java内存区域与Java内存模型
Java内存区域Java虚拟机在运行程序时会把其自动管理的内存划分为以上几个区域,每个区域都有的用途以及创建销毁的时机,其中蓝色部分代表的是所有线程共享的数据区域,而绿色部分代表的是每个线程的私有数据区域。方法区(Method Area):方法区属于线程共享的内存区域,又称Non-Heap(非堆),主要用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据,根据J...转载 2019-01-17 18:46:31 · 174 阅读 · 0 评论 -
Java虚拟机:性能监控与故障处理工具
Java虚拟机:性能监控与故障处理工具转自:https://blog.csdn.net/a745233700/article/details/84099558概述:给一个系统定位问题的时候,知识、经验是关键基础,数据是依据。工具是运用知识处理数据的手段。这里说的数据包括:运行日志、异常堆栈、GC日志、线程快照文件(threaddump/javacore文件)、堆转储快照(heapdum...转载 2019-03-04 00:45:26 · 107 阅读 · 0 评论 -
Java虚拟机:常见JVM参数配置和GC性能优化
Java虚拟机:常见JVM参数配置和GC性能优化转载 https://blog.csdn.net/a745233700/article/details/87740314一、常见的JVM参数配置:1、垃圾回收统计信息:-XX:+PrintGC打印GC简要信息-XX:+PrintGCDetails打印GC的详细信息-XX:+PrintGCTimeStam...转载 2019-03-04 00:44:27 · 219 阅读 · 0 评论 -
Java虚拟机:垃圾收集器
Java虚拟机:垃圾收集器转自:https://blog.csdn.net/a745233700/article/details/84067513HotSpot JVM:上面有7种收集器,分为两块,上面为新生代收集器,下面是老年代收集器。如果两个收集器之间存在连线,就说明它们可以搭配使用。一、Serial(串行GC)收集器:Serial收集器是一个新生代收集...转载 2019-03-04 00:43:39 · 142 阅读 · 0 评论 -
Java虚拟机:class类文件结构
Java虚拟机:class类文件结构一、平台无关性:Java的无关性的实现,是由于Java源代码编译后生成的存储字节码的文件,即Class文件,以及Java虚拟机的实现。无关性包括:平台无关性以及语言无关性。(1)平台无关性,是指java代码可以运行在不同操作系统的虚拟机上面,因为不同的操作系统都有各自的Java虚拟机,从而实现程序的“一次编写,到处运行”...转载 2019-03-04 00:41:12 · 118 阅读 · 0 评论 -
Java虚拟机:类加载机制、类的加载过程
Java虚拟机:类加载机制、类的加载过程一、什么是虚拟机的类加载机制:代码在编译后,就会生成java虚拟机能够识别的二进制字节流class文件,class文件中描述的各种信息,都需要加载到虚拟机之中才能运行和使用。虚拟机把类的数据从class文件加载到内存,并对数据进行校检,转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,就是类的加载机制。 类从加载到...转载 2019-03-04 00:40:17 · 115 阅读 · 0 评论 -
Java虚拟机:运行时内存数据区域、对象内存分配与访问
Java虚拟机:运行时内存数据区域、对象内存分配与访问一、Java运行时内存中的数据区域:每一个Java程序启动后,会获得一个JVM的实例,用来管理内存。Java 虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有个字的用途,以及创建和销毁时间。Java虚拟机所管理的内存将会包括以下几个运行时数据区域:1、程序计数器:程...转载 2019-03-04 00:38:29 · 103 阅读 · 0 评论 -
Java虚拟机:垃圾收集与内存分配策略
Java虚拟机:垃圾收集与内存分配策略一、确认对象是否存活:垃圾收集器在对堆进行回收前,首先要做的事情就是确定对象是否还存活,判断对象是否存活主要有两种算法:引用计数算法和可达性分析算法。1、引用计数算法:对象创建时,给对象添加一个引用计数器,每当有一个地方引用到它时,计数器值加1,;引用失效时,计数器值减1;当计数值值为0时,这个对象就是不可能再被引用的。2、可达性分析算法...转载 2019-03-04 00:37:01 · 74 阅读 · 0 评论 -
【深入Java虚拟机】之一:Java内存区域与内存溢出
内存区域Java虚拟机在执行Java程序的过程中会把他所管理的内存划分为若干个不同的数据区域。Java虚拟机规范将JVM所管理的内存分为以下几个运行时数据区:程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区。下面详细阐述各数据区所存储的数据类型。 程序计数器(ProgramCounterRegister)一块较小的内存空间,它是当前线...转载 2019-03-06 13:24:54 · 111 阅读 · 0 评论 -
深入JVM对象引用
在jdk 1.2以前,创建的对象只有处在可触及(reachaable)状态下,才能被程序所以使用,垃圾回收器一旦发现无用对象,便会对其进行回收。但是,在某些情况下,我们希望有些对象不需要立刻回收或者说从全局的角度来说并没有立刻回收的必要性。比如缓存系统的设计,在内存不吃紧或者说为了提高运行效率的情况下,一些暂时不用的对象仍然可放置在内存中,而不是立刻进行回收。因此,从jdk 1.2 版本开始,ja...转载 2019-03-04 00:16:52 · 121 阅读 · 0 评论 -
Java中JVM虚拟机详解
Java中JVM虚拟机详解1、 什么是JVM? JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。 JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需...转载 2019-03-06 13:25:05 · 136 阅读 · 0 评论 -
Java虚拟机中的内存设置详解
在一些规模稍大的应用中,Java虚拟机(JVM)的内存设置尤为重要,想在项目中取得好的效率,GC(垃圾回收)的设置是第一步。 PermGen space:全称是PermanentGenerationspace.就是说是永久保存的区域,用于存放Class和Meta信息,Class在被Load的时候被放入该区域Heapspace:存放Instance。 GC(GarbageCo...转载 2019-03-12 12:36:40 · 289 阅读 · 0 评论 -
java虚拟机内存管理机制(一)
近期看了看Java内存泄露的一些案例,跟原来的几个哥们讨论了一下,深入研究发现JVM里面还是有不少以前不知道的细节,这里稍微剖析一下。先看一看JVM的内部结构——如图所示,JVM主要包括两个子系统和两个组件。两个子系统分别是Class loader子系统和Execution engine(执行引擎) 子系统;两个组件分别是Runtime data area (运行时数据区域)组件和Native ...转载 2019-03-12 12:36:47 · 105 阅读 · 0 评论 -
深入了解JVM的底层原理
深入了解JVM的底层原理引言:什么是JVM?JVM在整个jdk(java 运行环境)中处于最底层,负责与操作系统的交互,用来屏蔽操作系统环境,提供一个完整的Java运行环境,因此也就虚拟计算机. 操作系统装入JVM是通过jdk中Java.exe来完成,通过下面4步来完成JVM环境.1.创建JVM装载环境和配置2.装载JVM.dll3.初始化JVM.dll并挂界到JNIENV(JNI调用...转载 2019-03-06 13:25:39 · 170 阅读 · 0 评论 -
JVM的底层实现原理
JVM是Java程序运行的环境,但是他同时也是一个操作系统的一个应用程序的一个进程,因此JVM也有他自己的运行生命周期,也有自己的代码和数据空间。JDKJDK在Java的整个体系中充当一个生产加工中心,产生所有的数据输出,是所有指令和战略的执行中心。本身还提供了Java的完整方案,可以开发目前Java能支持的所有应用和系统程序。而之所以现在还会分j2me,j2ee这些类,是把他们用来简化各...转载 2019-03-13 12:55:18 · 102 阅读 · 0 评论 -
Java虚拟机:为什么新生代内存需要有两个Survivor区
Java虚拟机:为什么新生代内存需要有两个Survivor区在JVM的新生代内存中,为什么除了Eden区,还要设置两个Survivor区?1、为什么要有Survivor区:先不去想为什么有两个Survivor区,第一个问题是,设置Survivor区的意义在哪里?如果没有Survivor,Eden区每进行一次Minor GC,存活的对象就会被送到老年代。老年代很快被填满...转载 2019-03-12 12:35:56 · 402 阅读 · 0 评论