[Vm-dev] Detecting objects that point to an object

Andreas Raab andreas.raab at gmx.de
Thu Jul 15 16:43:42 UTC 2010


On 7/15/2010 5:40 AM, Mariano Martinez Peck wrote:
> Hi folks. I need to know the objects (actually, only how many) that are
> pointing to any object. So...I take an object X, and I want to know how
> many objects are pointing to X.
>
> The only possible I see in Squeak VM is to do a full mark over all
> objects in memory (or starting by the roots). This is time consuming and
> I even need (maybe) to do this check (to know how many objects are
> pointing to an object) for every single object.
>
> So...is there a faster solution for this? The only thing I can imagine
> is to modify the object header, maybe create a new type, and add an
> array with the addresses of the objects that are pointing to that
> object. Or maybe just a counter that I can increase or decrease ?

That's called "reference counting". It's not supported in Squeak.

Cheers,
   - Andreas


More information about the Vm-dev mailing list