mirror of
https://github.com/cloudwu/skynet.git
synced 2026-07-25 12:43:09 +00:00
add gc service
This commit is contained in:
26
service/garbagecollect.lua
Normal file
26
service/garbagecollect.lua
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
local skynet = require "skynet"
|
||||||
|
local ssm = require "skynet.ssm"
|
||||||
|
|
||||||
|
local function ssm_info()
|
||||||
|
return ssm.info()
|
||||||
|
end
|
||||||
|
|
||||||
|
local function collect()
|
||||||
|
local info = {}
|
||||||
|
while true do
|
||||||
|
while ssm.collect(false, info) do
|
||||||
|
skynet.error(string.format("Collect %d strings from %s", info.n, info.key))
|
||||||
|
end
|
||||||
|
-- ssm.collect(true)
|
||||||
|
skynet.sleep(50)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
skynet.start(function()
|
||||||
|
if ssm.disable then
|
||||||
|
skynet.error "Short String Map (SSM) Disabled"
|
||||||
|
skynet.exit()
|
||||||
|
end
|
||||||
|
skynet.info_func(ssm_info)
|
||||||
|
skynet.fork(collect)
|
||||||
|
end)
|
||||||
Reference in New Issue
Block a user