On Thu, Jul 15, 2010 at 2:42 PM, Rob Withers reefedjib@yahoo.com wrote:
Utilities pointersTo: object
Thanks Rob. But that implementation does a someObject and then loops with nextObject. Thus, it does a full memory scan. I want to avoid that. So the only way is storing somewhere such pointers or at least a counter I think.
Thanks agian
mariano
http://www.noharmmeansnofoul.org
*From:* Mariano Martinez Peck marianopeck@gmail.com *Sent:* Thursday, July 15, 2010 8:40 AM *To:* Squeak Development Discussion Virtual Machinevm-dev@lists.squeakfoundation.org *Subject:* [Vm-dev] Detecting objects that point to an object
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 ?
Thanks for any tip.
Mariano