栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

常见的Java内存/引用泄漏模式?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

常见的Java内存/引用泄漏模式?

根据我的经验,两个关键的“有效泄漏”模式是:

  • 静力学和单例随着时间的推移逐渐增长。这可能包括缓存,实现不当和未使用的连接池,“自启动以来我们见过的每个用户”的字典等
  • 从寿命长的对象到 打算 是寿命短的对象的引用。在C#中,事件可能会发生,等效的观察者模式可能在Java中产生相同的效果。基本上,如果您要一个对象(观察者)观看另一个对象(源),则通常会得到 观察者的引用。最终可能是唯一的“实时”引用,但是只要有来源,它就会一直存在。
  • 如果您继续动态生成新代码,则Permgen会泄漏。我在这里处于更艰难的境地,但是我很确定自己已经遇到这种问题。这很可能部分是由于JRE错误已被修复-自从发生以来已经太久了,我无法确定。
  • 保持状态的单元测试的持续时间可能比您预期的更长,因为JUnit会保持测试用例的实例。同样,我不记得详细信息,但是有时候这样做值得在拆解中具有显式的“可变空值”,看起来不合时宜。

我不能说我经常发现内存泄漏是Java(或.NET)中的问题。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/454308.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号