java堆栈溢出怎么解决
Posted 魏大宾
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java堆栈溢出怎么解决相关的知识,希望对你有一定的参考价值。
当一个Java程序没有内存可用时就会导致堆栈溢出,从而抛出异常:java.lang.OutOfMemoryError: Java heap space,error,
此时可以通过增大jvm的堆内存来解决这个问题,当然了这个是最直接的方式,如果可以优化代码也是可以的,比如使用单例模式去优化代码。
在运行Java程序时,有两个参数可以用于对jvm堆内存的调整:
-Xms和-Xmx
工具/原料
-
堆内存
-
jvm
方法/步骤
-
首先要知道:
(1)-Xms<size>:用于设置jvm堆内存的初始大小
(2)-Xmx<size>:用于设置jvm堆内存的最大可用内存
-
使用java命令运行Java程序时,可以使用如下命令调整堆内存大小
(1)命令:java -Xms64m -Xmx128m TestString
(2)设置堆初始大小64m,最大可用堆内存128m
-
如果使用eclipse或者myeclipse等软件开发时,可以按照如下步骤设置
(1)选中待运行的类
-
(2)右键类,选择run as,然后选择run configurations
-
(3)在新的页面中,选择run arguments选项,在vm参数配置中,填写堆内存配置:-Xms128m -Xmx256m,然后点击运行,就可以设置了
-
如果想通过java自带的工具查看堆内存是否设置成功,请查看下文链接
以上是关于java堆栈溢出怎么解决的主要内容,如果未能解决你的问题,请参考以下文章