On Nov 2, 2007, at 5:53 PM, Rob Withers wrote:
The other thought I had was that garbage collection in squeak seems to happen when needed, immediately. Things may be so dire for memory that it has to do or die. This would give us a problem making it scheduled as another event, wouldn't it?
cheers, Rob
Well it happens when there is no free space to allocate something, or some limit reached, like free space becoming too low, or number of objects allocated over some limit. Certainly if there is no memory that's critical, the others are soft types of conditions.
however...
"GC scheduled as another event" I know of one smalltalk implementation that would signal when memory was becoming low, thus letting some process deal with the situation, however as machines got really fast the amount of head room became too small, and the VM memory allocator would run out of memory before the GC process could wake up... Usually increasing the headroom by as little as 10K would solve the problem.
-- ======================================================================== === John M. McIntosh johnmci@smalltalkconsulting.com Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com ======================================================================== ===