local group

This commit is contained in:
云风
2012-10-11 22:26:38 +08:00
parent 837e79949d
commit 4fb7fec2fa
5 changed files with 60 additions and 1 deletions

32
service/group_local.lua Normal file
View File

@@ -0,0 +1,32 @@
local skynet = require "skynet"
local local_group = {}
for i=1,10000 do
local_group[i] = true
end
local command = {}
function command.NEW()
local k = next(local_group)
if k then
local_group[k] = nil
skynet.ret(skynet.pack(k))
else
skynet.ret(skynet.pack(nil))
end
end
function command.DELETE(id)
assert(handle_group[id] == nil)
skynet.clear_group(id)
local_group[id] = true
end
skynet.start(function()
skynet.dispatch("lua", function(_, _, cmd, id)
local f = command[cmd]
assert(f, cmd, id)
f(id)
end)
end)

View File

@@ -1,6 +1,7 @@
local skynet = require "skynet"
local id = 0
-- read group_local for id 10000
local id = 10000
local harbor_ctrl = {}
local multicast = {}
local command = {}

View File

@@ -1,5 +1,6 @@
local skynet = require "skynet"
local group = require "mcgroup"
--local group = require "localgroup"
skynet.start(function()
local gid = group.create()

View File

@@ -1,5 +1,6 @@
local skynet = require "skynet"
local group = require "mcgroup"
--local group = require "localgroup"
local id, g = ...
skynet.start(function()