加载中
JVM系列扩展:常见垃圾回收算法

对象存活算法 在回收垃圾对象之前,垃圾收集器需要确认哪些对象“存活”和那些对象应该被回收 引用计数(Reference Counting) 引用计数是最古老的一种算法,在微软的COM组件技术,Adobe的A...

2016/10/16 13:59
78
JVM系列扩展:Java虚拟机日志分析

堆配置 堆大小设置 当Java进程启动时,虚拟机就会分配一块初始堆空间,可以使用-Xms指定这块空间的初始大小。如果初始堆耗尽,虚拟机就会对堆进行扩展(如果可能的话),最大堆空间可以使用参...

2016/10/15 20:34
423
JVM系列八:类加载器

###类加载器基本概念 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个这个类的java.lang.Class对象,用来封装类在方法区类...

2015/07/24 21:01
42
JVM系列七:执行引擎

Java虚拟机和物理机一样,都具有执行代码的能力,其区别在于,物理机执行引擎是直接建立在处理器、硬件、指令集和操作系统层面上的,而虚拟机的执行引擎则是由自己实现的,因此可以自行定制指...

2015/07/19 19:54
124
JVM系列六:类加载机制

###类加载的时机 类从被加载到虚拟机内存中开始,到卸载出内存,它的整个生命周期包括:加载,链接,初始化,使用,卸载。Java虚拟机规范严格规定了有且只有5中情况必须立即对类进行“初始化...

2015/07/19 00:40
152
JVM系列五:垃圾回收器

前面说到Java虚拟机的内存分配有两种,静态(栈)分配和动态(堆)分配,所以对于内存回收策略,也有两种:静态内存回收,动态内存回收 ##静态内存回收 如下面这段代码 public void staticDa...

2015/07/18 21:47
92
JVM系列四:内存分配和对象创建

在操作系统中,内存分配策略有两种: 静态内存分配:程序编译时就能确定每个数据在运行时的存储空间大小,因此在编译时就可以给它们分配固定的内存空间 动态内存分配: 1)栈内存分配:程序对...

2015/07/18 16:58
109
JVM系列三:JVM运行时数据区

##JVM运行时数据区 一谈到数据区域,大多数都会和C,C++相比较;对于Java程序员来说,不再需要为每一个new操作都写一个配对的delete、free代码,也很少会遇到像C++程序中那样的内存泄漏问题。...

2015/07/18 13:12
283
JVM系列二:JVM体系结构

系列一里讲到了Java虚拟机和操作系统的体系结构差别,这一节就简单的讲一下Java虚拟机的内部体系结构 从上图可以看出,JVM包括四个模块,分别是 1.类装载子系统:在JVM启动或者运行时将需要的...

2015/07/18 00:38
592
JDK性能监控工具

JDK命令行工具 jps:JVM Process Status Tool,显示指定系统内所有的HotSpot虚拟机进程,可以通过RMI协议查询开启了RMI服务的远程虚拟机进程状态 jps [options] [hos tid] 列出正在运行的虚...

2015/04/07 21:53
550
JVM系列一:Java虚拟机与操作系统结构比较

Java虚拟机,操作系统,结构,体系结构

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部