什么是京东账户余额尚未清空未清空,不能注销用户

这种情况可能的结果是出现异常類:OutOfMemoryError(内存溢出)

产生的原因其中之一就是 集合类中对对象的引用,使用完未清空使得JVM不能回收。

可以这样子清空代码如下:

随信附上絀现内存溢出异常时常用的解决办法(转自Java面试那些事):

  1. 检查代码中是否有死循环或递归调用。

  2. 检查是否有大循环重复产生新对象实体

  3. 检查对数据库查询中,是否有一次获得全部数据的查询一般来说,如果一次取十万条记录到内存就可能引起内存溢出。这个问题比较隐蔽在上线前,数据库中数据较少不容易出问题,上线后数据库中数据多了,一次查询可能就会引起内存溢出因此对于数据库查询盡量采用分页的方式查询。

  4. 检查List、Map等集合对象是否使用完未清除的问题List、Map等集合对象会始终存有对对象的引用,使得这些对象不能被GC回收

  5. 检查对大文件的读取是否采用nio的方式。(这块我不懂你可以百度看看,也欢迎你跟我交流)

望采纳,谢谢(●'?'●)

参考资料

 

随机推荐