• Home
  • Search
  • Visualizing Reference Patterns for Solving Memory Leaks in Java
  • Cite Icon115
  • https://doi.org/10.1007/3-540-48743-3_6Copy DOI Icon

Visualizing Reference Patterns for Solving Memory Leaks in Java

  • Jan 1, 1999
  • Wim De Pauw +1 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

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.

Similar Papers
  • Conference Article
  • Citations4

Team up

  • Oct 12, 2014
  • Isabella Stilkerich +5
  • Book Chapter

ARC Rules

  • Jan 01, 2012
  • Kazuki Sakamoto +1
  • Research Article
  • Citations7

High-level dynamic memory management for object-oriented real-time systems

  • Jan 01, 1996
  • ACM SIGPLAN OOPS Messenger
  • Kelvin Nilsen
  • Conference Article
  • Citations17

Can self-healing software cope with loitering?

  • Sep 03, 2007
  • Maayan Goldstein +2
  • Conference Article
  • Citations5

Antipatterns causing memory bloat: A case study

  • Feb 01, 2017
  • Kamil Jezek +1
  • Supplementary Content

Locality Aware Zeroing: Exploiting Both Hardware and Software Semantics

  • Jan 01, 2011
  • ANU Open Research (Australian National University)
  • Xi Yang
  • Conference Article
  • Citations2

Research and analysis of garbage collection mechanism for real-time embedded Java

  • May 26, 2004
  • Liu Wei +2
  • Research Article
  • Citations28

RUMA has it

  • Jun 01, 2016
  • Proceedings of the VLDB Endowment
  • Felix Martin Schuhknecht +2
  • Research Article

Gem #79:

  • Feb 22, 2012
  • ACM SIGAda Ada Letters
  • Emmanuel Briot
  • Conference Article
  • Citations3

MALT: a Malloc tracker

  • Oct 23, 2017
  • Sébastien Valat +2
  • Research Article

Improve the Latency of Go Applications while using GOGC

  • Dec 31, 2022
  • Journal of Mathematical & Computer Applications
  • Pallavi Priya Patharlagadda
  • Conference Article

How Weak Reference is Used in Java Projects?

  • Dec 01, 2020
  • Yoshiki Higo +3
  • Book Chapter

Parallel workstation clusters and MPI for sparse systems in computational science

  • Jan 01, 1998
  • Parallel Computational Fluid Dynamics '97
  • A Berner +1
  • Conference Article
  • Citations7

Analysis and Optimizations of Java Full Garbage Collection

  • Aug 27, 2018
  • Haoyu Li +2
  • Conference Article
  • Citations35

The CLOSER

  • Jun 07, 2008
  • Isil Dillig +3
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.