美文网首页
JVM总结1

JVM总结1

作者: 渭小粉 | 来源:发表于2019-02-25 10:34 被阅读0次

    java当中有一个方法区、栈存储区和堆存储区,栈存储区主要是存储基本数据类型,包括main函数(静态方法)也是在栈存储区当中,是程序执行的起点。堆存储区用于存储引用类型。对象一般会在栈存储区占用4个字节来存储堆当中数据的地址。

    方法区用于存放java类的相关信息,如类名、访问修饰符、常量池、字段描述、方法描述等。在类加载器加载class文件到内存中的时候,JVM会提取其中的类信息,并将这些类信息放到方法区中。 

    问题1:java当中是值传递还是引用传递?

    答案当然是值传递,因为程序的执行永远都是在栈内存当中。当了堆存储区就应该叫做读取了。

    问题2:当java中的数据太多,对象很对的时候,如何对jvm进行调整?

    调整java参数 -Xss,用来控制栈内存大小, -Xmx来控制堆内存的大小,-XX:MaxPermSize(该参数已经在JDK8当中移除了)控制方法区内存大小,如

    java -Xss1024000 -Xmx10240000 test

    上面这组命令就是分配了1024000个字节给堆内存,最大上限一般取决于当前的操作系统。

    相关文章

      网友评论

          本文标题:JVM总结1

          本文链接:https://www.haomeiwen.com/subject/kmjwyqtx.html