= Solution
\b[<Garbage collection> automatically reclaims allocated memory that is no longer reachable by the running program.] <Garbage collection roots> such as active references and static storage lead through object-reference fields to reachable <software objects> in <heap memory>. A <tracing garbage collection> implementation preserves reachable <software objects> and can reclaim unreachable ones, including unreachable cycles.
An <software object> becoming unreachable is different from its state being old or its last <object method> call having finished. A retained reference can keep it live indefinitely. Collection timing is an implementation matter; automatic reclamation does not promise that an <software object> is reclaimed immediately when the final useful reference disappears.
Back to article page