Magma design

Chris Muller afunkyobject at yahoo.com
Sat Aug 3 23:10:32 UTC 2002


Avi Bryant wrote:

Right, but once a stub gets replaced with a real object, the real object
will never get replaced back with a stub, correct?
Which means that, since the session has a reference to the root, and the
root has a reference to every other object in the database, once an object
is pulled into the client it will never be garbage collected unless it is
removed from the database.  This can be a problem for long running
clients.  I think what Stephen is suggesting is that, for example, you
periodically becomeForward: objects back into stubs that have not been
used for a certain length of time.

======

Whoa, hold on..  The session does *not* reference the root.  It gets it, every
time.

So unless your program references the root, it should be garbage collected.

I'm quite confused why I would need to turn objects back into stubs.  My
assumption was, if your program still needed (read: referenced) an object, they
wouldn't do it any good as a stub.

If your program doesn't need them, they'll be gc'ed.

What am I missing?

__________________________________________________
Do You Yahoo!?
Yahoo! Health - Feel better, live better
http://health.yahoo.com



More information about the Squeak-dev mailing list