22

4GBのRAMを搭載した32ビットWindowsXPで32ビットIntellijを使用しています。
私はintellijxmxを1.5GBに増やしようとしています:-Xmx1500m
つまり、JVMが32ビットシステムで1.5GBのRAMをサポートしていることを知っています。
しかし、このエラーはJVMからスローされます:

The JVM could not be started. The maximum heap size (-Xmx) might be too large ...

intellij Xmxを900MB以上増やすことはできませ
ん。助けてください!

4

1 に答える 1

44

JVMはすべてのヒープを単一の連続したチャンクに割り当てる必要があるため、これを行うことはできません。これは、メモリの断片化のために不可能な場合があります。詳細については、FAQの記事を参照してください。

この写真も参照してください:

JVMヒープ

お気づきのように、合計プロセスメモリはヒープサイズだけではなく、2GBのOS制限に達するのがはるかに簡単になります。

使用できる実際のヒープは、OS構成および実行中の他のアプリケーションによって異なります(フック付きのDLLがプロセススペースに挿入され、追加のフラグメンテーションが発生します)。通常、512Mから1Gの間ですが、クリーンなシステムではさらに高くなる可能性があります。

于 2012-11-21T09:17:57.607 に答える