service manager

This commit is contained in:
云风
2012-09-07 11:19:03 +08:00
parent 4c1cbaaf3e
commit 0c71985f28

23
service/service_mgr.lua Normal file
View File

@@ -0,0 +1,23 @@
local skynet = require "skynet"
local service = {}
local function query(service_name, ...)
local s = service[service_name]
if s == nil then
s = skynet.newservice(service_name, ...)
service[service_name] = s
end
return s
end
skynet.start(function()
skynet.dispatch("lua", function(session, address, service_name , ...)
local handle = query(service_name, ...)
skynet.ret(skynet.pack(handle))
end)
skynet.register(".service")
if skynet.getenv "standalone" then
skynet.register("SERVICE")
end
end)