有没有一种方法可以以编程方式设置最大Java堆大小,而不是作为VM参数?
类似以下内容:
类似以下内容:
System.getProperties().put("<heap variable>", "1000m");
System.getProperties().put("<heap variable>", "1000m");
不能使用任何热点JVM来更改JVM堆参数。JVM堆参数只能在命令行上指定,然后在JVM运行期间保持不变。
使用Hotspot Java实现,唯一改变应用程序堆大小的方法是使用不同的命令行参数在新的JVM中重新启动它。
(我模糊地记得来自其他供应商的JVM允许在运行的JVM中更改某些堆参数。也许有人可以澄清这一点。)