/
niceSOFT
/
lua
Обзор
Документация
Войти
/
niceSOFT
/
lua
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
=list
testes/tracegc.lua
40 строк
680 B
Roberto Ierusalimschy
New test module 'tracegc'
01 мар 2021, 19:54
01 мар 2021, 19:54
5276973
Код
Авторство
О чём код?
-- track collections local M = {} -- import list local setmetatable, stderr, collectgarbage = setmetatable, io.stderr, collectgarbage _ENV = nil local active = false -- each time a table is collected, remark it for finalization on next -- cycle local mt = {} function mt.__gc (o) stderr:write'.' -- mark progress if active then setmetatable(o, mt) -- remark object for finalization end end function M.start () if not active then active = true setmetatable({}, mt) -- create initial object end end function M.stop () if active then active = false collectgarbage() -- call finalizer for the last time end end return M