首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

web应用中 内存没有被回收,why?解决方案

2012-01-22 
web应用中 内存没有被回收,why???在Spring + hibernate 的web应用程序中,我连续做几次批量的操作,在jdk1.6

web应用中 内存没有被回收,why???
在Spring + hibernate 的web应用程序中,我连续做几次批量的操作,在jdk1.6自带的jconsole控制台中监控到内存一直在增加,而未被回收,一开始以为是没有到回收的时间,可过了一个晚上的时间,内存始终在150M左右,没有被回收的迹象,一晚上hibernate Session已经失效,session中的对象应该都被释放了。。最初我jvm的虚拟内存设为 300M,我把jvm的虚拟内存设成250M(200Mtomcat就启动不起来了)也内存也未被回收。如果每天做批量错做,内存肯定会泄露。这问题该怎么解决呢???

我在每次执行完saveOrUpdate后执行session.flush(),session.clear();连续执行批量操作内存使用虽然没有一直增加,在上下波动的状态,但也没有被回收。

我手动的执行System.gc(),内存即会下降。

到底是什么原因会导致内存没有被垃圾回收器回收呢??

[解决办法]
我们的项目现在也存在同样的问题。。。

关注ING...

热点排行
Bad Request.