操作方法
以eclipse为例,编写一个给map赋值的循环,循环次数1000w次,就会出现下图所示的异常信息。
异常信息内容如下: Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at java.lang.AbstractStringBuilder.<init>(AbstractStringBuilder.java:45) at java.lang.StringBuilder.<init>(StringBuilder.java:92) at TestMap.main(TestMap.java:13)我的java虚拟机堆区溢出,导致我的main函数因为发生异常而终止。
那么怎样解决这个问题呢?一种方案是通过修改eclipse.ini配置文件中的参数来修改jvm的各个内存区域的大小,但是我实际修改了配置文件,并没有解决我的问题。又再网上查找了一下,发现在eclipse的每个工程下可以分别配置jvm各个参数的大小。具体配置如下图所示,项目上右键,run-as》run configuration》弹出配置窗口,选择(x)argument选项,在vm argument处填写-Xmx800m即可,注意,800是大小,以m(兆)为单位。具体操作见下图1和2.