Eclipse中设置Java程序运行时的JVM参数
一个示例程序如下;
import java.util.List;
import java.util.ArrayList;public class linklist {public static void main(String[] args) {List<TestCase> cases = new ArrayList<TestCase>();while(true){cases.add(new TestCase());}}
}class TestCase{}
进入调试设置对话框,设置如下的参数,
-verbose:gc -Xms20M -Xmx20M -XX:+HeapDumpOnOutOfMemoryError
限制Java堆的大小为20MB,不可扩展(将堆的最小值-Xms与最大值-Xmx设置为一样即可避免堆自动扩展);
-XX:+HeapDumpOnOutOfMemoryError,可让虚拟机在出现内存溢出异常时Dump出当前的内存堆转储快照,以便事后分析;
运行程序,出现下面的输出,
提示创建了一个Dump文件;
有时间继续;