Java heap space 的具体解决方法 5
4个回答
展开全部
这种情况一般是程序本身问题导致在运行中使JVM内存溢出,从而抛出此异常:
1、蠢敬首先就是需要检查下自己代码问题,比如有没有死循环或者递归调用没设置停止条件等等;
2、手动设置程序运行时的JVM堆栈内存,一般都是调大些,具体方法:
对所以工程都有效:修改eclipse根目录下的eclipse.ini文件
-vmargs //虚拟机设置
-Xms40m //初始内存
-Xmx256m //最大内存
-Xmn16m //最小内存
-XX:PermSize=128M //非堆内存
-XX:MaxPermSize=256M
只对当前工程有效:在Eclipse中-->右击工程/要运行的主类-->Debug As- ->DebugConfigurations-->(x)=Arguments-->VM arguments中加入- Xmx36m,然后Apply-->Run
这上面的36指的是给java虚拟机分配的最大堆内存大小,单位是MB,也就 是说上陆吵面的那句话的含义是JVM的最大堆内存是早档侍36MB。
如果以上方法均无效,那可能就是Eclipse本身的问题,需要重新安装。
展开全部
问题可以描述清楚点吗,比如你遇到的具体问题
这个是虚拟机内存溢出圆茄, 一般出现的原因有两个:1:程序有橡雹问题,比如死循环等一直执行。2:虚拟机的内存分配太小,建议修改梁腔帆虚拟机分配的内存:
Xms800m
-Xmx800m
修改配置文件中这两项的值,不能超出本机内存
这个是虚拟机内存溢出圆茄, 一般出现的原因有两个:1:程序有橡雹问题,比如死循环等一直执行。2:虚拟机的内存分配太小,建议修改梁腔帆虚拟机分配的内存:
Xms800m
-Xmx800m
修改配置文件中这两项的值,不能超出本机内存
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
修改默认内存 只是治标不治陪逗本,比如你芦孝卖一个list里面 放了10w条记录 溢出了
你把内存调高点 到了15w 还是得溢出慎绝
要防止堆溢出
注意以下几点
1.代码中尽量少new 对象
2.尽可能在循环外面 创建对象
3.存数据的容器 比如array 很省空间,而像hashtable这种 就很占空间
4. 少用一些重量级的组件 比如那个calendar对象 很占空间
你把内存调高点 到了15w 还是得溢出慎绝
要防止堆溢出
注意以下几点
1.代码中尽量少new 对象
2.尽可能在循环外面 创建对象
3.存数据的容器 比如array 很省空间,而像hashtable这种 就很占空间
4. 少用一些重量级的组件 比如那个calendar对象 很占空间
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
内存溢出了. 吧JAVA虚拟机的内存配高点就行了.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询