1

JVMヒープサイズを増やすためのスタックオーバーフローのいくつかの投稿に従って、 JVMヒープサイズを増やしました。上記のリンクで提案されているように環境変数を設定します。

以下のプログラムを実行して、最大ヒープサイズを確認しました。

public class GetHeapSize {
     public static void main(String[]args){

            //Get the jvm heap size.
            long heapSize = Runtime.getRuntime().totalMemory();

            //Print the jvm heap size.
            System.out.println("Heap Size = " + heapSize);
        }

}

設定前と設定後は16252928と同じ出力が得られました

ヒープサイズを増やす方法を誰かに提案できますか?

4

2 に答える 2

0

は、ヒープの現在のサイズをtotalMemory()報告します。ヒープが成長する最大サイズが必要な場合は、代わりに呼び出します。javadoc は次のように述べています。maxMemory()

「Java 仮想マシンが使用しようとするメモリの最大量を返します。固有の制限がない場合は、値 Long.MAX_VALUE が返されます。」

そして、量はバイト単位で測定されると言います。

于 2012-11-07T05:39:50.277 に答える
0

一般的なケースでは、ヒープ サイズは動的に増加するため、-Xmx オプションを使用してヒープの高いサイズを制限し、-Xms オプションを使用してヒープの開始サイズを設定し、開始時にそれらを同じにすることができます。 JVM が動的メモリ操作にリソースを費やさないこと。また、より有益な JMX の方法を使用して、MemoryMXBean Bean を介してヒープ サイズを取得することも興味深いかもしれません。

MemoryMXBean MEMORYMXBEAN = ManagementFactory.getMemoryMXBean();
于 2012-11-07T07:07:48.310 に答える