|(programming)||reference counting - A garbage collection technique where each
memory cell contains a count of the number of other cells
which point to it. If this count reaches zero the cell is
freed and its pointers to other cells are followed to
decrement their counts, and so on recursively.|
This technique cannot cope with circular data structures. Cells in such structures refer (indirectly) to themselves and so will never have a zero reference count. This means they would never be reclaimed, even when there are no references from outside the structure.