You seem to be talking about a reference counting implementation. These have several problems. Inneficiency, counter overflow, circular lists don't get reclaimed and space added to each object. You might be interested in the Baker four color algorithm who's problems are space added to each object and poor behavior in threaded applications.