From: Kaz K. <ka...@as...> - 2004-03-08 22:29:38
|
[I have to do more testing and provide a tiny test case that reproduces this problem.] Suppose you have a program that builds as a CLISP image, and you have a feature in that program whereby it can regenerate itself using sources and write a new image of itself. When you repeatedly invoke this feature, you get a successively larger and larger image, as reported by the figures printed by SAVEINITMEM. This happens even though garbage collection is done just before calling by calling (GC) just before (SAVEINITMEM). In my program, I actually do a DELETE-PACKAGE before re-loading the modules into the image, so that no symbolic references remain to any of the top-level functions and variables. So the growth is not from things like DEFVARS that still have old values, not replaced by the reloading. |