JAVA 内存泄漏问题。

有谁能提供一个好点的内存泄漏检测工具?小弟我被这个问题困住了,开上几个小时,内存就基本涨满了。... 有谁能提供一个好点的内存泄漏检测工具?
小弟我被这个问题困住了,开上几个小时,内存就基本涨满了。
展开
 我来答
hhnvf42
2011-01-03 · TA获得超过9306个赞
知道小有建树答主
回答量:1674
采纳率:0%
帮助的人:1049万
展开全部
Java中虽然使用了gc策略,但事实上还是会出现内存泄漏现象的,java因此还提出了弱引用等局部解决方案。

但楼主说的System.exit(0)是不会形成内存泄漏的。

其实这里都是两个范畴的内存了。楼上以及我开始说的Java中的内存是指虚拟机的内存,映射到宿主机可以有各种实现,虽然一般也是映射到内存。 而System.exit(0)会析构掉虚拟机,也就是把这个虚拟的机器都拆了,也就无从谈起虚拟机内存泄漏不泄漏的概念,正所谓皮之不存,毛将焉附。而问题是宿主机的内存是否泄漏了。从原理上说,虚拟机运行时,不管执行怎样的指令,映射到宿主机器资源,都回在机器被拆掉时释放。当然,从实现上说,如果宿主操作系统,或者JVM有bug,当然有可能造成内存泄漏,但和java程序员写的客户程序无关。(补充:包括在宿主机内杀java进程,其资源回收问题是操作系统和java平台的责任。我们在古老的操作系统经常会遇到文件没正常关闭之类的问题,但现在的操作系统这些问题应该不会很大,也就是宿主机其实也有一定的回收机制,包括内存回收,但着本身不是内存泄漏的范畴,内存泄漏是指程序运行时的客户程序造成的内存资源失控。当客户程序退出时的问题,就是操作系统设计的范畴了)
kengzcn
2011-01-03 · TA获得超过304个赞
知道答主
回答量:238
采纳率:100%
帮助的人:217万
展开全部
java也有内存泄漏问题?你是不是忘记关闭流了。或者忘记关闭数据库。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式