地址: http://blog.csdn.net/autofei/article/details/7456213。
摘录:
JVM 内存包含如下几个部分:
- Heap Memory 存放Java对象
- Non-Heap Memory 存放类加载信息和其它meta-data
- Other 存放JVM 自身代码等
在JVM启动时,就已经保留了固定的内存空间给Heap内存,这部分内存并不一定都会被JVM使用,但是可以确定的是这部分保留的内存不会被其他进程使用。这部分内存大小由 -Xmx 参数指定。
而另一部分内存在JVM启动时就分配给JVM,作为JVM的初始Heap内存使用。影响这个的参数是 -Xms。
默认空余堆内存小于40%时,JVM 就会增大堆直到-Xmx的最大限制,可以由-XX:MinHeapFreeRatio指定。
默认空余堆内存大于70%时,JVM 会减少堆直到-Xms的最小限制,可以由-XX:MaxHeapFreeRatio指定。
可以通过-XX:MaxPermSize
设置Non-Heap大小
相关推荐
书中从简单的锁机制讲起,逐渐深入到更高级的同步技术,比如事务内存系统。锁是一种传统的同步机制,用于控制对共享资源的访问,防止数据竞争条件。然而,锁的使用可能引入死锁、活锁、优先级反转等问题,本书对这些...
很简单一个模式,就是在内存中保留原来数据的拷贝. 设计模式之 Interpreter(解释器) 主要用来对语言的分析,应用机会不多. 设计模式之 Visitor(访问者) 访问者在进行访问时,完成一系列实质性操作,而且还可以扩展. ...
JAVA没有提供任何操作来释放内存(iOS的开发语言Object C能自行控制内存释放),是通过系统的内存回收机制来进行管理,但内存回收是个双刃剑,GC(Garbage Collection,垃圾回收)时所有线程都要暂停,也就是所谓的...
类加载器:( 扩展,5个月后会讲) 加载字节码的一个类而已: 1. 启动类加载器(Bootstrap classLoader) c++ 本地代码实现的类加载器,它负责将 <JAVA_HOME>/lib下面的核心类库 或 -...
Blog记载了日常发生的事情和自己的兴趣爱好,把自己的思想和知识和他人分享、交流,同时又通过“六度空间”结识了更多志趣相投的朋友;而越来越多专业知识的 Blog 的出现,让我们看到了 Blog 更多所蕴涵的巨大的...
一度我认为学习Java会使我看起来与众不同,可是几个月以后我放弃了这个选择,我看了论坛里关于这两种语言孰优孰劣的讨论,最终选择了C#,请不要问我为何做出这样的选择,很多人认为中文是世界上最美丽的语言,可是...
1.学习过一门编程语言(如:java ,c) 2.最好学习过一门别的数据库(sql server,mysql , access) 教程推荐:oracle使用教程, 深入浅出oracle 记住:欲速则不达,做任何事情要遵循他的规律,循序渐进,信心很重要 ...
从就业与择业的角度来讲,计算机相关专业的大学生从事oracle方面的技术是职业发展中的最佳选择。 其一、就业面广:全球前100强企业99家都在使用ORACLE相关技术,中国政府机构,大中型企事业单位都能有ORACLE技术的...