zoukankan      html  css  js  c++  java
  • 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堆空间和如何给每个对象分配多少内存。

  • 相关阅读:
    主席树模板之区间问题
    简易版第k大(权值线段树+动态开点模板)
    Irrigation
    Petya and Array
    H. Pavel's Party(权值线段树)
    权值线段树入门
    位数差(二分)
    ZYB's Premutation(树状数组+二分)
    单调队列入门
    javaBean为什么要implements Serializable?
  • 原文地址:https://www.cnblogs.com/549294286/p/3604950.html
Copyright © 2011-2022 走看看