[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Re: Back to the GC stall in atomic()
- From: Niklas Frykholm <niklas@...>
- Date: Tue, 11 Dec 2007 19:13:32 +0100
Roberto Ierusalimschy wrote:
Yes, it is luaC_separateudate that stalls. But is that separation phase
really needed if my finalizers "promise" never to create new lua
objects, touch other lua objects, etc.
Even if you promise not to touch other Lua objects, Lua itself needs
the metatable of the userdata in order to call its finalizer. If the
metatable is collected (because the last reference to it came from
the userdata and it was not marked in the atomic phase), you are in
I'm holding references to all the metatables on the C side, so I should
be safe from that at least. If there are no other possible issues, it
I'll try it. I really need to get rid of those stalls.