JiveJdon Community Forums
在线131人 J道首页 | 论坛首页 | 培训咨询 | 开源框架 | 精华 | 查搜 | 注册 | 登陆 |
首页 » 论坛 » J2EE/JavaEE/JEE/EJB/JSF等技术讨论
???en_US.forumThreadPrev.name??? 上一主题
Go back to the topic listing   返回主题列表
???en_US.forumThreadNext.name??? 下一主题
这个主题共有 5 回复 / 1 页 [ ]  发表新帖子  回复该主题贴
MrJava

发表文章: 15
注册时间: 2008年03月26日 19:56
java 内存泄漏 发表: 2008年04月07日 21:27 回复
java中会存在内存泄漏吗,什么是内存泄漏?如何处理?
banq

发表文章: 8929
注册时间: 2002年08月03日 17:08
回复:java 内存泄漏 发表: 2008年04月08日 11:22 回复
会存在,而且很容易发生,需要高技巧设计。
wlmouse

发表文章: 112
注册时间: 2006年11月09日 15:58
回复:java 内存泄漏 发表: 2008年04月08日 18:05 回复
Java也存在内存泄露。不过和C的不一样。C是因为没有自动收集,所以必须手动清除对象。Java有自动收集器收集不用的对象,不用考虑因为忘记写清除内存代码而造成泄露。但是Java的收集器收集的对象必须没有任何引用。但是有时候我们写的对象在使用完成后,还由引用指向这个对象。但是这个对象已经作废了。因为引用的存在,所以无法被收集器收集。这种对象越来越多,就是Java的内存泄露。
处理的办法就是清理代码,找到忘记把引用置Null的地方,把引用置Null。
banq

发表文章: 8929
注册时间: 2002年08月03日 17:08
回复:回复:java 内存泄漏 发表: 2008年04月09日 10:01 回复
>处理的办法就是清理代码,找到忘记把引用置Null的地方,把引用置Null。
很多书籍上都是这么说,其实这没有任何用处。

处理好Java内存泄漏,还是归结到要深刻掌握对象的生命周期,从对象设计思想上入手,参考这个帖子:
java的new真的给我们带来了麻烦吗?
http://www.jdon.com/jivejdon/thread/33823.html
zhengguo07q

发表文章: 9
注册时间: 2008年03月19日 04:54
re:java 内存泄漏 发表: 2008年04月14日 18:10 回复
内存泄露就是堆区数据结构(对象)使用完后没有回收
一般存在的有使用本地代码(C)的内存泄露, 比如你看到的大量的.close方法就是为了回收这些产生的
还有就是看jvm的GC工作方式,使用引用记数的可能会出现循环记数,这也导致内存结构不能有效回收。 如果是这样的话就要手动打破回环了~~
zhengguo07q

发表文章: 9
注册时间: 2008年03月19日 04:54
re:java 内存泄漏 发表: 2008年04月14日 18:10 回复
内存泄露就是堆区数据结构(对象)使用完后没有回收
一般存在的有使用本地代码(C)的内存泄露, 比如你看到的大量的.close方法就是为了回收这些产生的
还有就是看jvm的GC工作方式,使用引用记数的可能会出现循环记数,这也导致内存结构不能有效回收。 如果是这样的话就要手动打破回环了~~
这个主题有 5 回复 / 1 页 [ ]
???en_US.forumThreadPrev.name??? 上一主题
Go back to the topic listing   返回主题列表    返回页首  返回页首
???en_US.forumThreadNext.name??? 下一主题
热点TAG: AOP cache DDD EJB 集群 设计模式 Hibernate IOC JiveJdon OO RBAC Spring Struts
查询本论坛内 回复超过的热门帖子
快速发表回复
标题
 
粗体 斜体 下划线 插入图片 插入代码 插入url链接 插入附件
内容
 

解惑之道在J道 ,打造中国最具影响力的的企业软件社区
OpenSource JIVEJDON v3.0 Powered by JdonFramework Code © 2002-07 jdon.com

anti spam