[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Re: Reference numbers always increment. Is this correct?
- From: roberto@... (Roberto Ierusalimschy)
- Date: Thu, 9 Aug 2007 17:14:30 -0300
> I'm testing some code that creates and releases 500 references using
> luaL_ref and luaL_unref. Even though the calls to luaL_ref and
> luaL_unref are paired, I notice that each call to luaL_ref returns a
> number that is 1 greater than the previous reference number. I assume
> this behavior is expected but I though I'd post here to make sure. (I
> was guessing that reference numbers would be reused.)
This behavior is not expected (if I understood you correctly). As soon
as you release a reference it can be used again; luaL_ref should only
return a "new" (greater) index when there are no free (previously
unref) numbers left.
(This does not apply when the value being referenced is nil. In this
case luaL_ref always returns -1, the value of LUA_REFNIL.)