首页> 外文期刊>Zeitschrift fur Arznei- und Gewurzpflanzen >Memory and resource leak defects and their repairs in Java projects
【24h】

Memory and resource leak defects and their repairs in Java projects

机译:内存和资源泄漏缺陷及其在Java项目中的维修

获取原文
获取原文并翻译 | 示例
           

摘要

Despite huge software engineering efforts and programming language support, resource and memory leaks are still a troublesome issue, even in memory-managed languages such as Java. Understanding the properties of leak-inducing defects, how the leaks manifest, and how they are repaired is an essential prerequisite for designing better approaches for avoidance, diagnosis, and repair of leak-related bugs. We conduct a detailed empirical study on 491 issues from 15 large open-source Java projects. The study proposes taxonomies for the leak types, for the defects causing them, and for the repair actions. We investigate, under several aspects, the distributions within each taxonomy and the relationships between them. We find that manual code inspection and manual runtime detection are still the main methods for leak detection. We find that most of the errors manifest on error-free execution paths, and developers repair the leak defects in a shorter time than non-leak defects. We also identify 13 recurring code transformations in the repair patches. Based on our findings, we draw a variety of implications on how developers can avoid, detect, isolate and repair leak-related bugs.
机译:尽管巨大的软件工程努力和编程语言支持,但资源和内存泄漏仍然是一个麻烦的问题,即使在Java等内存管理语言中也是如此麻烦的问题。了解泄漏诱导缺陷的性质,如何泄漏清单,以及它们的修复方式是设计避免,诊断和修复泄漏相关错误的更好方法的必要先决条件。我们对来自15个大型开源Java项目的491个问题进行了详细的实证研究。该研究提出了泄漏类型的分类,了解导致它们的缺陷,以及修复行动。我们在几个方面调查每个分类内的分布以及它们之间的关系。我们发现,手动代码检查和手动运行时检测仍然是泄漏检测的主要方法。我们发现大多数错误都在无错误执行路径上清算,并且开发人员在较短的时间内修复泄漏缺陷而不是泄漏缺陷。我们还确定了修复补丁中的13个重复的代码转换。根据我们的调查结果,我们对开发人员如何避免,检测,隔离和修复泄漏相关的错误,我们提出了各种各样的含义。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号