在比较大型或者特殊的项目中,Java虚拟机默认的堆栈大小时常不够用,因此抛出内存溢出的异常。
利用JDK自带的一些工具,例如Jconsole,可以产看虚拟机的各种状态,当然,启动Jconsole并不是很便捷的事情,尤其是在IDE环境下。这时候可以利用Eclipse来简单查看虚拟机内存状态,具体设置如下:
在参数设置里打开这个功能,勾选Show heap satus,如下图:
然后就可以在界面中看到下图:
90M是最内存最大值,前一个数是目前使用大小。可以点击最右边的小垃圾桶进行手动垃圾回收。
当然,堆大小限制是可以设置的,可以在运行的时候设置,也可以设置通用值。具体怎么做不再讨论。