|
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 trouble...
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 might work....
I'll try it. I really need to get rid of those stalls. // Niklas