Using passive object garbage collection algorithms for garbage collection of active objects

Abhay Vardhan, Gul Agha

Research output: Contribution to journalArticlepeer-review


With the increasing use of active object systems, agents and concurrent object oriented languages like Java, the problem of garbage collection (GC) of unused resources has become more complex. Since active objects are autonomous computational agents, unlike passive object systems the criterion for identifying garbage in active objects cannot be based solely on reachability from a root set. This has led to development of specialized algorithms for GC of active objects. We reduce the problem of GC of active objects to that of passive objects by providing a transformation of the active object reference graph to a passive object reference graph so that if a garbage collector for a passive object system is applied to the transformed graph, precisely those objects are collected which correspond to garbage objects in the original active object reference graph. The transformation technique enables us to reuse the algorithms already developed for passive objects systems. We provide a proof of correctness of the transformation and discuss its cost. An advantage of the transformation is that it can prove valuable for mixed systems of active and passive objects by providing a common approach to GC.

Original languageEnglish (US)
Pages (from-to)213-220
Number of pages8
JournalACM SIGPLAN Notices
Issue number2 SUPPL.
StatePublished - Feb 2003


  • Active objects
  • Actors
  • Agents
  • Garbage collection
  • Java
  • Program transformation

ASJC Scopus subject areas

  • Software
  • Computer Graphics and Computer-Aided Design


Dive into the research topics of 'Using passive object garbage collection algorithms for garbage collection of active objects'. Together they form a unique fingerprint.

Cite this