任何人都可以帮助我 我在过去的一周里一直在努力解决这个问题,但无法得到答案。我的问题是我有三个类,一个类创建一个线程,另一个类每10秒创建一个线程,每个类我打开一个数据库连接我的代码是巨大的,因为某些算法运行然后在同一点它会褶皱并给出如下错误。 谢谢你提前。
答案 0 :(得分:1)
增加jvm中的以下配置
-Xms<size> set initial Java heap size
-Xmx<size> set maximum Java heap size
-Xss<size> set java thread stack size
要动态获取堆大小,请使用以下代码
//Get the jvm heap size.
long heapSize = Runtime.getRuntime().totalMemory();
//Print the jvm heap size.
System.out.println("Heap Size = " + heapSize);
答案 1 :(得分:1)
尝试在调用时增加JVM的堆最小和最大堆内存大小。
例如:java -Xms512M -Xmx1280M MainClassFile
这将调用初始堆大小为512兆字节的JVM,并可执行类文件,最大可扩展到1280兆字节。
有关详情,请参阅以下链接:http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html