2017-05-02 09:56
OutOfMemoryError 主要分两种情况:
1:自己的程序写得有 bug,有内存泄漏的代码存在
2:没有内存泄漏的代码存在,但内存被消耗的速度大于内存回收的速度,常常是由于程序在某些地方高速 new 出大对象,内存回收来不及
最快的解决方案是利用 jprofile 这类专业性的工具:http://www.oschina.net/p/jprofiler
当然,你如果嫌这类工具比较麻烦,也可以用一下 jdk 自带的 jmap、jstack、jstat这类工具辅助解决,这些工具的具体用法网上多得是