Java堆

1. Java堆的内存是由操作系统分配给JVM的内存部分。

 

2. Java的对象是在堆中创建

 

3. Java堆空间为了垃圾回收分为三个区域或代,叫做新代,年老代和永久代。在Hotspot JVM中永久代在full gc时被垃圾回收。

 

4. 您可以使用JVM命令行选项-XMS,-Xmx和-Xmn为增加或改变Java堆空间的大小。不要忘了指定的大小来表示兆或千兆后需添加单词“M”或 “G”。例如,你可以通过执行命令

java -Xmx256M HelloWord来设置Java堆大小为256MB。

 

5. 您可以使用JConsole或Runtime.maxMemory(),Runtime.totalMemory(),Runtime.freeMemory()查询有关Java堆大小的方案。

 

6. 在Java中您可以使用命令jmap来获取heap dump,并使用jhat来分析这个heap dump。

 

7. Java堆空间不同于堆栈,堆栈用来存储调用层次和局部变量。

 

8. Java垃圾回收器负责从不再使用的对象中回收内存,并返回给Java堆空间。

 

9. 当你得到java.lang.OutOfMemoryError不要惊慌,有时它只是增加堆的大小,但如果它复发那就要看看是否有Java内存泄漏。

 

10. 使用Profiler和Heap Dump Analyzer工具来了解Java堆空间和如何给每个对象分配多少内存。

Java堆,布布扣,bubuko.com

Java堆

上一篇:Reinforcement Learning in Spiking Neural Networks with Stochastic and Deterministic Synapses


下一篇:JavaScript语言基础-对象与数组