参见英文答案 >
Java process memory check test2
对于启发式预计算表,我需要一个具有1504935936个条目的字节数组.这应该占用大约1.5 GB的内存.
对于启发式预计算表,我需要一个具有1504935936个条目的字节数组.这应该占用大约1.5 GB的内存.
public class Main{ public static void main(String[] args){ byte[] arr = new byte[1504935936]; } }
为什么我有一个“OutOfMemoryError:Java堆空间” – 异常,如果我给程序2 GB的RAM与
java -Xmx2048M Main
同
java -Xmx2153M Main
有用.为什么需要这么多RAM?