懂JAVA的大虾们,帮帮忙,JVM不释放内存,为什么

JAVA程序运行之后一直消耗内存,即便JAVA程序停止之后,JVM也不释放内存,内存一直在减少,为什么?这里声明一下,我的程序可以正常运行,只不过在运行期间,内存一直在消... JAVA程序运行之后一直消耗内存,即便JAVA程序停止之后,JVM也不释放内存,内存一直在减少,为什么?
这里声明一下,我的程序可以正常运行,只不过在运行期间,内存一直在消耗,即使我把程序停了,系统也不释放内存。程序没有外部调用,难道真没有人碰见过这种问题么,谁知道对IBM的JVM 进行调优?
展开
 我来答
__yhm__
2008-11-19
知道答主
回答量:14
采纳率:0%
帮助的人:0
展开全部
IBM关于内存泄漏的文章:
1)http://www.ibm.com/developerworks/library/j-leaks/index.html
2)http://www.ibm.com/developerworks/cn/java/l-JavaMemoryLeak/

第一篇结尾有提到预防泄漏的方法:
a)注意集合类(比如 Hashtable 和 Vector);尤其是声明为 static 的
b)记得移除不再需要的事件/组件监听器
c)很多类都有引用类型的成员变量;不再需要这些成员变量引用的对象时,把它们设为 null

程序没有外部调用,把程序停了,系统也不释放内存?
怎么可能?
最好代码能让大家看看。
百度网友f9b137a8c
2008-11-18 · 超过32用户采纳过TA的回答
知道答主
回答量:167
采纳率:0%
帮助的人:94.8万
展开全部
开机后别跑java程序看jvm异常不,如果异常就重装jre
运行一个其他的java程序看看是不是异常,如果异常重装jre
重装jre不管用的话就是系统的问题了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sd3570395
2008-11-22 · TA获得超过352个赞
知道小有建树答主
回答量:478
采纳率:0%
帮助的人:313万
展开全部
1,如果jvm上只运行这一个程序,那么需要好好考虑下你的把程序停了是什么意思,怎么停的了
2,你的程序是什么程序,如果有涉及web应用和数据库的,停程序之后和它们连接的占用不会释放
3,如果是界面程序,那么界面停止,程序内开的线程等并不是同时停止的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Oo海之蓝歌oO
2008-11-18 · 喜欢计算机有关的东东
Oo海之蓝歌oO
采纳数:244 获赞数:876

向TA提问 私信TA
展开全部
JVM是不是再跑别的程序啊?
GC又不是立即释放内存的啊?
还有你是不是在你的JAVA里有外部调用啊?有的话GC搞不定啊,只能自己写回收了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wufisher
2008-11-18 · TA获得超过3960个赞
知道小有建树答主
回答量:621
采纳率:0%
帮助的人:626万
展开全部
估计跟JVM无关,可能是中毒了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sorry1254
2008-11-28 · TA获得超过1208个赞
知道小有建树答主
回答量:240
采纳率:0%
帮助的人:248万
展开全部
有时问题很简单,想都想不到,看看程序中有没有无限循环,像流操作的话就检查一下循环条件有没有输入错误~~~~~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式