Lua
कचरा संग्रहकर्ता और कमजोर टेबल
खोज…
वाक्य - विन्यास
- संग्रहणीय कचरा (gcrule [, gcdata]) - gcrule का उपयोग करके कचरा एकत्र करें
- setmetatable (टैब, {__mode = weakmode}) - टैब के कमजोर मोड को कमजोर करने के लिए सेट करें
पैरामीटर
पैरामीटर | विवरण |
---|---|
gcrule और gcdata | जीसी (कचरा संग्रहकर्ता) पर कार्रवाई: "stop" (संग्रह करना बंद करना), "restart" (फिर से इकट्ठा करना शुरू करना), "collect" या nil (सभी कचरा इकट्ठा करना), "step" (एक एकत्रित चरण करना), "count" ( "count" KBs में उपयोग की गई मेमोरी की वापसी संख्या, "setpause" और डेटा 0 % से 100 % (gc का सेट पॉज पैरामीटर), "setstepmul" की संख्या है और डेटा 0 % से 100 (gc के लिए "stepmul" सेट "stepmul" ) । |
weakmode | कमजोर तालिका का प्रकार: "k" (केवल कमजोर कुंजी), "v" (केवल कमजोर मान), "vk" (कमजोर मान) |
कमजोर टेबल
local t1, t2, t3, t4 = {}, {}, {}, {} -- Create 4 tables
local maintab = {t1, t2} -- Regular table, strong references to t1 and t2
local weaktab = setmetatable({t1, t2, t3, t4}, {__mode = 'v'}) -- table with weak references.
t1, t2, t3, t4 = nil, nil, nil, nil -- No more "strong" references to t3 and t4
print(#maintab, #weaktab) --> 2 4
collectgarbage() -- Destroy t3 and t4 and delete weak links to them.
print(#maintab, #weaktab) --> 2 2
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow