[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Re: Updating to 5.1w5: My change list
- From: Roberto Ierusalimschy <roberto@...>
- Date: Fri, 18 Mar 2005 16:21:54 -0300
> For example, a call to collectgarbage( "step", n ) will slam right
> over the top of this.
If someone is crazy enough to do that call inside a finalizer, then
why not let his wish come true?
> On a related note from looking at the code, I have to say that LUA_GCSTEP
> doesn't do what I would have thought it would have done. I would have
> expected it to run things forward as if a certain amount of memory had been
> allocated -- i.e., as if totalbytes had been driven up. Or alternatively, it
> could have lowered the threshold by the step amount. Instead, it sets the
> threshold based on the step. Doesn't this mean that calls to "step"
> essentially throw the garbage collector into fully-active mode since the
> threshold will now be less than totalbytes?
Actually the `n' argument is not working properly, but in the other
direction, it seems. A call to LUA_GCSTEP does roughly one GC "step", no
matter `n'. (A quick test took some 350 step calls to perform a full GC