如何增加JVM的堆大小
可能重复:
我如何增加JVM内存?
我收到以下错误:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at SQLite.Vm.step(Native Method) at SQLite.Database.get_table(Database.java:314) at SQLite.JDBC2z.JDBCStatement.executeQuery(JDBCStatement.java:120) at SQLite.JDBC2z.JDBCStatement.executeQuery(JDBCStatement.java:168) at TestData.readData(TestData.java:21) at TestData.main(TestData.java:41)
以下是可用于更改堆大小的几个选项。
-Xms<size> set initial Java heap size -Xmx<size> set maximum Java heap size -Xss<size> set java thread stack size
java -Xmx256m TestData.java
用-Xms = [size] -Xmx -XX启动程序:MaxPermSize = [size] -XX:MaxNewSize = [size]
例如 –
-Xms512m -Xmx1152m -XX:MaxPermSize=256m -XX:MaxNewSize=256m
Java命令行参数
-Xms: initial heap size -Xmx: Maximum heap size
如果你正在使用Tomcat。 更新CATALINA_OPTS
环境variables
export CATALINA_OPTS=-Xms16m -Xmx256m;
在调用java时使用-Xmx
命令行参数。
请参阅http://download.oracle.com/javase/6/docs/technotes/tools/windows/java.html
使用-Xms1024m -Xmx1024m来控制堆大小(1024m仅用于演示,确切数量取决于您的系统内存)。 将最小和最大堆大小设置为相同通常是最佳实践,因为JVM不必在运行时增加堆大小。
-XmxSIZE
例如:-Xmx1024M