首页> 外文会议>European Conference on Object-Oriented Programming >Visualizing Reference Patterns for Solving Memory Leaks in Java
【24h】

Visualizing Reference Patterns for Solving Memory Leaks in Java

机译:可视化参考模式,以解决Java中的内存泄漏

获取原文

摘要

Many Java programmers believe they do not have to worry about memory management because of automatic garbage collection. In fact, many Java programs run out of memory unexpectedly after performing a number of operations. A memory leak in Java is caused when an object that is no longer needed cannot be reclaimed because another object is still referring to it. Memory leaks can be difficult to solve, since the complexity of most programs prevents us from manually verifying the validity of every reference. In this paper we show a new methodology for finding the causes of memory leaks. We have identified a basic memory leak scenario which fits many important cases. In this scenario, we allow the programmer to identify a period of time in which temporary objects are expected to be created and released. Using this information we are able to identify objects that persist beyond this period and the references which are holding on to them. Scaling this methodology to real-world systems brings additional challenges. We propose a novel combination of visual syntax and reference pattern extraction to manage this additional complexity. We also describe how these techniques can be applied to a wider class of memory problems, including the exploration of large data structures. These techniques have been implemented and have been proven successful on large projects.
机译:许多Java程序员认为由于自动垃圾收集,他们不必担心内存管理。实际上,在执行许多操作后,许多Java程序意外地耗尽内存。当无法接收不再需要的对象时,导致Java中的内存泄漏是由于另一个对象仍然指的是。内存泄漏可能很难解决,因为大多数程序的复杂性阻止我们手动验证每个参考的有效性。在本文中,我们显示了一种寻找内存泄漏原因的新方法。我们已经确定了一种基本的内存泄漏方案,其适合许多重要案例。在这种情况下,我们允许程序员识别预期创建和释放临时对象的时间段。使用此信息,我们能够识别超出此时的对象以及将其持有的引用。将这种方法扩展到现实世界系统带来了额外的挑战。我们提出了一种新颖的视觉语法和参考模式提取组合来管理这种额外的复杂性。我们还描述了如何将这些技术应用于更广泛的内存问题,包括探索大数据结构。已经实施了这些技术,并已在大型项目上成功。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号