转载地址:http://blog.csdn.net/chjttony/article/details/6785221 还有相关的文章:http://blog.csdn.net/waldmer/article/detail…
分类:java虚拟机
《深入理解java虚拟机》---早期(编译期)优化(10)
一、概述 java语言的“编译器”其实是一段“不确定”的操作过程,因为他可能是指一个前端编译器把.java文件转变成.class文件,也可能是指虚拟机后端运行期编译器(JIT编译器)把字节码变成机器码的过程,还可能是指静…
深入java虚拟机(四)
package com.ygl; class CL { //静态代码块可以简单理解为初始化一些值 static { System.out.println(“Class CL”); } } publ…
《深入理解java虚拟机》读书笔记(三)---- 垃圾回收算法及垃圾收集器介绍
一、垃圾回收算法 1、标记–清除算法 标记–清除(Mark-Sweep)算法,分为标记和清除两个阶段,首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象,这是最基础的收集算法,后续…
深入Java虚拟机学习----Java内存区域01
[img]http://dl2.iteye.com/upload/attachment/0115/0695/9b9c31a1-4427-3810-a41e-bc0e33a0988b.png[/img] [b]java虚拟…
深入理解JAVA虚拟机——总结1:自动内存管理机制
JAVA虚拟机管理的内存 数据区 线程共享部分 本地方法区(存放虚拟机加载的类信息、常量、静态变量、JIT编译器编译后的代码等)(有时称为永久代,逐渐被取代) StackOverflowError: 动态生成大量Clas…
【深入Java虚拟机】之三:类初始化
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17845821 类初始化是类加载过程的最后一个阶段,到初始化阶段,才真正开始执行类中…
垃圾回收中的finalize方法(ZZ from 深入理解java 虚拟机)
在根搜索算法中不可达的对象,也并非是“非死不可”的,这时候它们暂时处于“缓刑”阶段,要真正宣告一个对象死亡,至少要经历两次标记过程:如果对象在进行根搜索后发现没有与GC Roots相连接的引用链,那它将会被第一次标记并且…
深入理解JAVA虚拟机—第三章垃圾收集器和内存分配策略(三)关于回收方法区
关于回收方法区 很多人认为方法区中是没有垃圾收集的,其实JVM规范中确实说过方法区可以不用实现方法区垃圾收集,而且在方法区中进行垃圾收集的效果也不是特别好,在新生代中,常规进行一次垃圾收集,一般可以收集70%-95%的空…
深入了解Java虚拟机学习之--如何实现线程安全?
一、互斥同步 1.同步:在多个线程并发访问共享数据时,保证共享数据在同一个时刻只被一个(或是一些,使用信号量的时候)线程使用。 2.互斥:是实现同步的一种手段,主要有以下: 临界区,互斥量,信号量 互斥是手段,同步是目的…
此专题文章参考于《深入理解Java虚拟机》
在此表示感谢
深入学习Java虚拟机学习笔记-垃圾收集器与内存分配策略
1. 判断对象已死的方法 1.1 引用计数算法:给对象添加一个引用计数器,每当有一个地方引用它,就加1。缺点是很难解决对象之间的相互循环引用。 1.2 可达性算法:通过一系列的称为“GC Roots”的对象作为起始点,从…