摘要: 1.jvm的内部体系结构浅析 2.jvm的几个运行时数据区域 3.jvm的内存溢出异常 在Java虚拟机规范的描述中,除了PC(程序计数器)寄存器外,虚拟机内存的其他几个运行时区域都有发生OutOfMemoryError异常的可能。当发生OutOfMemoryError异常时,无法用try...catch捕捉。 在开始讲解之前,在这里先简单介绍下虚拟机启动相关的一些内存设置参数。因为OutOfMemoryError异常发生,与这些参数的设置密切相关。举例说明含义:-Xss128k每个线程的java栈大小,一个线程java栈所有栈帧大小总和最大允许的尺寸128k。-Xms128m 表示JVM . 阅读全文
posted @ 2012-05-12 18:48 evan2012 阅读(7774) 评论(3) 推荐(6) 编辑
摘要: 1.jvm的内部体系结构浅析 2.jvm的几个运行时数据区域 3.jvm的内存溢出异常上一篇文章已经简单介绍了jvm的内部体系结构。并且对各个组成部分做了简要的说明。下面通过一个简单的java程序,讲解运行过程中牵涉到的几个数据区域。代码如下: 1 public class Test { 2 3 public static void main(String[] args) { 4 int tempA = 1;//1 5 int tempB = 2;//2 6 Test test = new Test();//3 7 int r... 阅读全文
posted @ 2012-05-11 11:47 evan2012 阅读(1869) 评论(0) 推荐(1) 编辑
摘要: 1.jvm的内部体系结构浅析 2.jvm的几个运行时数据区域 3.jvm的内存溢出异常 jvm全称是Java Virtual Machine(java虚拟机)。它之所以被称之为是“虚拟”的,就是因为它仅仅是由一个规范来定义的抽象计算机。我们平时经常使用的Sun HotSpot虚拟机只是其中一个具体的实现(另外还有BEA JRockit、IBM J9等等虚拟机)。在实际的计算机上通过软件来实现一个虚拟计算机。与VMWare等类似软件不同,你是看不到jvm的,它存在于内存。 当启动一个Java程序时,一个虚拟机实例也就诞生了。当该程序关闭退出,这个虚拟机实例也就随之消亡。如果在同一台计算机上同时. 阅读全文
posted @ 2012-05-09 12:49 evan2012 阅读(6760) 评论(0) 推荐(1) 编辑