Java虚拟机(七)——垃圾收集GC介绍

1、概述本文的目的是用简单的方式向你介绍GC。在学习GC前,应该知道一个技术名词:“stop-the-world“。无论你选择哪种GC算法,Stop-the-world都会发生。Stop-the-world意味着JVM停止应用程序,而去进行垃圾回收。当stop-the-world发生时,除了进行垃...

2016-11-16 19:56:23

阅读数 251

评论数 0

Java虚拟机(六)——内存溢出和内存泄露分析

关于内存溢出和内存泄露在我以前的博文Java 内存溢出(java.lang.OutOfMemoryError)的常见情况和处理方式中做过大概介绍,此处在进行补充。 1、内存溢出 内存溢出:OOM(OutOfMemoryError)异常,即程序需要内存超出了虚拟机可以分配内存的最大范围。在Jav...

2016-10-11 08:48:43

阅读数 1807

评论数 0

Java虚拟机(五)——垃圾收集机制

1、垃圾回收介绍    Java虚拟机内存划分讲到了Java 内存运行时区域的各个部分,其中程序计数器,虚拟机栈,本地方法栈三个区域随线程而生,随线程而灭,栈中的栈帧随着方法的进入和退出有条不紊地执行着出栈和入栈操作。每一个栈帧中分配多少内存基本上是在类结构确定下来是就已知了。因此这几个区域的内...

2016-10-11 08:43:31

阅读数 3812

评论数 0

Java虚拟机(四)——对象的创建、存储和定位

1、对象的创建   Java是一门面向对象的编程语言,Java 程序运行过程中无时无刻都有对象被创建出来,在语言层面上,创建对象(例如克隆,反序列化)通常仅仅是一个new关键字而已,例如下面的语句。Object obj = new Object();其实在在虚拟机中,当遇到上述语句时,其执行过程...

2016-09-28 08:49:15

阅读数 417

评论数 0

Java虚拟机(三)——类加载机制

1、概述   虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被Java虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。   类从被加载到虚拟内存中开始,到卸载内存为止,它的整个生命周期包括了:加载(Loading)、验证(Verific...

2016-09-28 08:44:43

阅读数 392

评论数 0

Java虚拟机(二)——Java堆内存划分

1、堆内存介绍 对于大多数应用来说,Java堆(Java Heap)是Java 虚拟机所管理的内存中最大的一块。此内存区域的唯一目的就是存在对象实例,几乎所有的对象实例都在这里分配内存。这个区域也是Java垃圾收集器管理的主要区域,因此很多时候也被称为”GC堆”。所以堆内存非常重要,我们有必要去...

2016-09-27 08:54:24

阅读数 389

评论数 0

Java虚拟机(一)——Java内存区域划分

1、介绍 Java虚拟机在执行Java程序的过程中会把他所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。1.1 内存区域 Java虚拟机在执行Java程序的过程中会把他所管...

2016-09-27 08:50:21

阅读数 389

评论数 0

java中类的加载顺序介绍(ClassLoader)

1、ClassNotFoundExcetpion 我们在开发中,经常可以遇见java.lang.ClassNotFoundExcetpion这个异常,今天我就来总结一下这个问题。对于这个异常,它实质涉及到了java技术体系中的类加载。Java的类加载机制是技术体系中比较核心的部分,虽然它和我们直...

2016-08-14 10:44:15

阅读数 38635

评论数 8

详解Java内存分配

1、内存分配   我们知道,一个Java程序是运行在JVM(Java Virtual Machine,Java虚拟机)上的,我们可以把JVM理解成Java程序和操作系统之间的桥梁,JVM实现了Java的平台无关性,由此可见JVM的重要性。所以在学习Java内存分配原理的时候一定要牢记这一切都是在...

2016-08-14 09:55:11

阅读数 373

评论数 0

java内存泄漏

1、Java内存回收机制 不论哪种语言的内存分配方式,都需要返回所分配内存的真实地址,也就是返回一个指针到内存块的首地址。Java中对象是采用new或者反射的方法创建的,这些对象的创建都是在堆(Heap)中分配的,所有对象的回收都是由Java虚拟机通过垃圾回收机制完成的。GC为了能够正确释放对象,...

2017-05-28 08:18:59

阅读数 288

评论数 0

Java内存泄漏详解

1、Java内存回收机制 不论哪种语言的内存分配方式,都需要返回所分配内存的真实地址,也就是返回一个指针到内存块的首地址。Java中对象是采用new或者反射的方法创建的,这些对象的创建都是在堆(Heap)中分配的,所有对象的回收都是由Java虚拟机通过垃圾回收机制完成的。GC为了能够正确释放对象,...

2017-05-07 16:11:57

阅读数 358

评论数 0

Java内存模型

1、概述多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服务器平均能响应的请求数,而TPS值与程序的并发能力有着非常密切的关系。在讨论Java...

2017-03-26 21:06:35

阅读数 497

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭