【发布时间】:2012-06-27 10:37:10
【问题描述】:
我必须编写一个程序来处理 3000*3000 矩阵。 它只能工作到 600*600。
所以我通过将堆大小增加java -Xms64m -Xmx1024m <class_name> 来运行我的程序
因为最初 OutOfMemoryError 正在发生。
这样就解决了问题。
现在,同样的程序用于在 Applets 中绘制值。 所以我做了一个包并导入它。 但随后出现了同样的错误,因为您无法运行小程序。
您只能输入javac class_name.java 和appletviewer class_name.java。
所以我无法增加堆大小。
所以我特意放了一个main() 函数...计算要绘制的值(存储在数组中)。
小程序会打印它们。 而且该数组是静态的和全局的。
然后我编译(javac class_name.java)并运行(java -Xms64m -Xmx1024m <class_name>),然后输入appletviewer class_name.java。
但是 0,0,0,... 显示出来了。 基本上是int数组的默认值。
好像main() 函数从未运行过。
即使数组是全局的。
最终,我只需要一个main() 函数...以及一些存储值并在输入ppletviewer class_name.java 时保留它们的变量。
有没有办法做到这一点? 或者增加小程序的堆大小?
因为当我在init() 或paint() 函数中输入逻辑时,会出现同样的错误(OutOfMemoryError)
【问题讨论】:
-
您是否尝试使用“增加小程序堆”进行谷歌搜索?如果你为最终用户这样做对不起你没有办法。您不能强迫用户更改系统设置才能看到您的杰作。
-
尝试阅读您在此主题上提出的最后一个问题的答案...:P 如果您不阅读它们,那么回答毫无意义。
标签: java applet heap-memory appletviewer