2023-12-05 04:48:31 +08:00
|
|
|
local function prequire(name) local success, result = pcall(require, name); return if success then result else nil end
|
|
|
|
local bench = script and require(script.Parent.bench_support) or prequire("bench_support") or require("../bench_support")
|
2021-10-30 04:25:12 +08:00
|
|
|
|
|
|
|
function test()
|
|
|
|
local t = {}
|
|
|
|
|
|
|
|
local max = 10000
|
|
|
|
local iters = 50000
|
|
|
|
|
|
|
|
for i = 1,iters do
|
|
|
|
local is = tostring(i)
|
|
|
|
local input = string.rep(is, 1000 / #is)
|
|
|
|
|
|
|
|
t[is] = input
|
|
|
|
|
|
|
|
-- remove old entries
|
|
|
|
if i > max then
|
|
|
|
t[tostring(i - max)] = nil
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
bench.runCode(test, "GC: hashtable keys and values")
|