More modern garbage collection schemes are often based on a notion of reachability - if you don't have a usable reference to the memory in question, it can be collected.
Set A.member = B Set B.member = A ' Now they each have two references.