最新文章列表

深入理解Java虚拟机-常用vm参数分析

Java虚拟机深入理解系列全部文章更新中… 深入理解Java虚拟机-Java内存区域透彻分析 深入理解Java虚拟机-常用vm参数分析 深入理解Java虚拟机-JVM内存分配与回收策略原理,从此告别JVM内存分配文盲
SIHAIloveYAN 评论(0) 有473人浏览 2019-12-11 17:08

JVM系列文章汇总

JVM中运行时数据区中的堆、栈、方法区等区域的特性介绍 Java中class文件的组成结构 JVM的类加载生命周期介绍 Java堆、新生代老年代的特点、堆中的内存分配策略 JVM垃圾收集算法详解 JVM各个垃圾收集器的简单介绍及常用参数详解 JVM中的内存溢出\OOM的原因及解决方案 浅谈Java类加载器ClassLoader以及双亲委派模式 JVM常用调优参数 Java虚拟机是 ...
javenshi 评论(0) 有675人浏览 2019-05-22 09:15

深入java虚拟机之类的初始化

    类初始化是类加载过程的最后一个阶段,到初始化阶段,才真正开始执行类中的Java程序代码。虚拟机规范严格规定了有且只有四种情况必须立即对类进行初始化:   遇到new、getstatic、putstatic、invokestatic这四条字节码指令时,如果类还没有进行过初始化,则需要先触发其初始化。生成这四条指令最常见的Java代码场景是:使用new关键字实例化对象时、读取或设置一个 ...
dwj147258 评论(0) 有374人浏览 2017-10-18 14:50

深入java虚拟机之内存模型

  内存区域     Java虚拟机在执行Java程序的过程中会把他所管理的内存划分为若干个不同的数据区域。Java虚拟机规范将JVM所管理的内存分为以下几个 ...
dwj147258 评论(0) 有444人浏览 2017-10-18 13:27

JAVA虚拟机类加载机制笔记

可在微信公众中查看该文章:http://mp.weixin.qq.com/s/qKR04b2aGBVdk30TsDZXdw 1、虚拟机的类加载机制:虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型; 2、在java语言中,类的加载、连接和初始化过程都是在程序运行期间完成的;缺点:令类加载时增加性能开销;优点:会为java ...
IT小将 评论(0) 有409人浏览 2017-05-27 17:23

Java虚拟机原理学习

一、 (1)虚拟机是Java的运行支撑系统,Java与生俱来的通用性、安全性和高效性都建立在Java的虚拟机之上,这三个特性之所以能够在 Java虚拟机上实现,是因为Java源代码的编译结果并非是本地机器指令,而是字节码。 (2)Java之所以能够实现 一次编译,处处运行,功不可没的当属字节码,和C/C++等传统语言不同,Java源代码的默认编译结果并非是可执行代码(本地机器指令),而是 具 ...
陶永攀 评论(0) 有446人浏览 2017-03-20 10:03

java对象的访问方式

java需要通过栈上的reference数据来操作堆上的具体对象,目前主流有两种方式:1.使用句柄  使用句柄的话,java堆将会划分一块内存来作为句柄池,reference中存储的就是对象的句柄地址,而句柄中包含了对象实例数据与对象类型数据各自的具体地址信息2.直接指针   reference中存储的直接就是对象地址 两种方式各有优势,使用句柄访问最大好处是reference中存储的稳定的句 ...
kedamaomao 评论(0) 有292人浏览 2016-12-06 10:52

JVM监控与故障处理

    现实企业级java开发中,有时候我们会碰到下面这些问题: OutOfMemoryError内存不足 内存泄露 线程死锁 锁争用(lock Contention) Java进程消耗CPU过高 ... ... 等等     这些问题在日常开发中可能被很多人忽视(比如遇到上面这些问题就重启服务器或者跳大内存,而不会深究问题根源),但能够解决这些问题是Java程序员的必备需求 ...
student_lp 评论(0) 有671人浏览 2016-11-21 15:00

JVM 栈帧

JVM 栈帧  一、栈帧   栈帧(Frame)是用来存储数据和部分过程结果的数据结构,同时也被用来处理动态链接(Dynamic Linking)、方法返回值和异常分派 ...
莫名的拉风 评论(0) 有3819人浏览 2016-10-11 15:02

java虚拟机-GC日志

在分析java内存问题的时候需要查看GC日志,这里概要的总结一下GC日志该如何看 通过设置-XX:+PrintGCDetails虚拟机参数就可以得到GC日志,下面是一段GC日志示例,笔者使用的是JDK8,HotSpot虚拟机   publicclass T {publicstaticvoid main(String[] args) { T t = new T();   Syst ...
买切糕的猴子 评论(0) 有2136人浏览 2016-09-22 22:55

java虚拟机-垃圾回收机制

     我们都知道Java使用的是垃圾自动回收机制,开发者无需像C程序员一样时时刻刻关心何时做垃圾回收。但是作为一名Java程序员了解JVM的垃圾回收 ...
买切糕的猴子 评论(1) 有961人浏览 2016-09-21 23:20

漫谈Java虚拟机(JVM)

Java 虚拟机(JVM)是可运行 Java 代码的假想计算机。 只要根据 JVM 规范描述将解释器移植到特定的计算机上,就能保证经过编译的任何 Java 代码能够在该系统上运行。      从上图中不难明白JAVA可以实现可移植性的原因, 只要在操作系统上 (Windows、Linux、Unix)植入 JVM(Java 虚拟机) ,JAVA 程序就具有可移植性,也符合 SUN 公   司提 ...
l4432848 评论(0) 有905人浏览 2016-07-27 19:59

JVM学习(2)-JVM垃圾回收算法

java虚拟回收垃圾对象时,一份分为两步: 1、虚拟机在回收堆空间在之间,会先判断哪些对象已经死亡; 2、然后再对这些死亡对象通过特定的回收算法进行回收   一、判断对象是否死亡 1、引用计算器算法 给对象添加一个引用计算器,如果其他地方引用它,计算器就加1,当引用失效时,计算器就减1。当计算器为0时,这个对象不能被再次使用,需要被回收了。 优点:实现简单 缺点:不能解决对象之间 ...
haoran_10 评论(0) 有1784人浏览 2016-02-01 16:40

JVM学习(1)-JVM运行时数据区

导言:java是基于一门虚拟机的语言,所以了解并且熟知虚拟机运行原理非常重要。   先整体看一张java虚拟机技术图:   一、堆 1、方法区,Method ...
haoran_10 评论(0) 有1025人浏览 2016-02-01 16:36

第二章(三) Java虚拟机结构-栈帧

2.6 栈帧     栈帧用来存储变量值、中间结果,也用来进行动态链接、返回访法值和分发异常。     栈帧在一个方法调用时创建,在方法调用完成后销毁,不管方法是正常结束,还是非正常结束(方法抛出异常)。栈帧从创建此栈帧的线程对应的虚拟机栈中分配存储空间。每个栈帧有自己的本地变量表、操作数栈以及一个指向当前方法对应类的运行时常量池的引用。     本地变量表和操作数栈的大小在编译时确定,随着当前栈帧 ...
fengyilin 评论(0) 有587人浏览 2016-01-21 22:56

JAVA虚拟机之六:虚拟机性能监控和故障处理工具

一、JDK命令行工具简介 所有的java开发人员都知道JDK的bin目录下存放着编译java需要的javac,以及运行java程序需要的java这两个命令工具,但是很多人并没有注意到,其实除了这两个工具,该目录下还有很多工具,这些工具其实为我们提供了很多方便且强大的功能,windows7系统64位jdk1.7/bin目录下部分截图: 下面是命令行监控的主要工具和用途: 名称     ...
zzq19860626 评论(2) 有3089人浏览 2016-01-01 14:07

JAVA虚拟机之四:G1垃圾收集器

一、关于G1 G1 (Garbage-First)是一款面向服务器的垃圾收集器,主要针对配备多颗处理器及大容量内存的机器. 以极高概率满足GC停顿时间要求的同时,还具备 ...
zzq19860626 评论(0) 有7018人浏览 2015-12-18 00:16

JAVA虚拟机之三:CMS垃圾收集器

一、CMS垃圾收集器介绍 CMS(Concurrent Mark Sweep)收集器是一种以获取最短回收停顿时间为目标的收集器。目前很大一部分的Java应用都集中在互联网站或B/S系统的服务端上,这类应用尤其重视服务的响应速度,希望系统停顿时间最短,以给用户带来较好的体验。CMS收集器就非常符合这类应用的需求。 从名字(包含“Mark Sweep”)上就可以看出CMS收集器是基于“标记-清除 ...
zzq19860626 评论(2) 有8144人浏览 2015-12-13 02:04

JAVA虚拟机之二:Java体系结构

Java体系结构包括四个独立但相关的技术: Java程序设计语言。 Java class文件格式。 Java应用编程接口(API)。 Java虚拟机。 当编写并运行一个Java ...
zzq19860626 评论(0) 有2622人浏览 2015-12-10 23:36

最近博客热门TAG

Java(141744) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54919) .net(54785) Web(54514) 工作(54118) Linux(50905) Oracle(49875) 应用服务器(43289) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37267) 数据结构(36424)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics