Re: Unlocking circular references (was: loosing memory in compiled code)
Ralf Juengling <[email protected]> Wed, 22 Feb 2006 13:25:50 -0800 (PST)
| Newsgroups | gmane.lisp.lush.devel |
|---|---|
| Message-ID | <[email protected]> |
On Wed, 22 Feb 2006, Leon Bottou wrote: > On Wednesday 22 February 2006 03:57 pm, you wrote: >> Turns out that this was not the only locking bug, though. I also >> found that the garbage collector cannot purge circular structures, >> and I use circular lists frequently in conjunction with mapcar. E.g.: > > That is a limitation of reference counting. > A second mark and sweep garbage collector runs whenever an error occurs. > This one can clear circular structures. It cannot run in general because > nothing tracks the set of roots stored in C variables. > > In the mean time, you should break the circular structure with (delete xxx) Thanks. Wouldn't then an interface to the mark and sweep gc be a good idea? You may want to call it once in a while in applications that run for a while. Ralf ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642