Fixing connection * issue
This commit is contained in:
parent
71ab702a75
commit
dc9cee5a3e
9
init.lua
9
init.lua
@ -35,7 +35,7 @@ if not _G["$multi"] then
|
|||||||
_G["$multi"] = {multi=multi,thread=thread}
|
_G["$multi"] = {multi=multi,thread=thread}
|
||||||
end
|
end
|
||||||
|
|
||||||
multi.Version = "15.3.0"
|
multi.Version = "15.3.1"
|
||||||
multi.Name = "root"
|
multi.Name = "root"
|
||||||
multi.NIL = {Type="NIL"}
|
multi.NIL = {Type="NIL"}
|
||||||
local NIL = multi.NIL
|
local NIL = multi.NIL
|
||||||
@ -168,17 +168,23 @@ function multi:newConnection(protect,func,kill)
|
|||||||
|
|
||||||
c1(function(...)
|
c1(function(...)
|
||||||
cn.__count[1] = cn.__count[1] + 1
|
cn.__count[1] = cn.__count[1] + 1
|
||||||
|
c1:Lock()
|
||||||
if cn.__count[1] == cn.__hasInstances[1] then
|
if cn.__count[1] == cn.__hasInstances[1] then
|
||||||
cn:Fire(...)
|
cn:Fire(...)
|
||||||
cn.__count[1] = 0
|
cn.__count[1] = 0
|
||||||
|
c1:Unlock()
|
||||||
|
c2:Unlock()
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
c2(function(...)
|
c2(function(...)
|
||||||
cn.__count[1] = cn.__count[1] + 1
|
cn.__count[1] = cn.__count[1] + 1
|
||||||
|
c2:Lock()
|
||||||
if cn.__count[1] == cn.__hasInstances[1] then
|
if cn.__count[1] == cn.__hasInstances[1] then
|
||||||
cn:Fire(...)
|
cn:Fire(...)
|
||||||
cn.__count[1] = 0
|
cn.__count[1] = 0
|
||||||
|
c1:Unlock()
|
||||||
|
c2:Unlock()
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
return cn
|
return cn
|
||||||
@ -259,6 +265,7 @@ function multi:newConnection(protect,func,kill)
|
|||||||
function c:fastMode()
|
function c:fastMode()
|
||||||
if find_optimization then return self end
|
if find_optimization then return self end
|
||||||
function self:Fire(...)
|
function self:Fire(...)
|
||||||
|
if lock then return end
|
||||||
for i=1,#fast do
|
for i=1,#fast do
|
||||||
fast[i](...)
|
fast[i](...)
|
||||||
end
|
end
|
||||||
|
|||||||
39
rockspecs/multi-15.3-1.rockspec
Normal file
39
rockspecs/multi-15.3-1.rockspec
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
package = "multi"
|
||||||
|
version = "15.3-1"
|
||||||
|
source = {
|
||||||
|
url = "git://github.com/rayaman/multi.git",
|
||||||
|
tag = "15.3.1",
|
||||||
|
}
|
||||||
|
description = {
|
||||||
|
summary = "Lua Multi tasking library",
|
||||||
|
detailed = [[
|
||||||
|
This library contains many methods for multi tasking. Features non coroutine based multi-tasking, coroutine based multi-tasking, and system threading (Requires use of an integration).
|
||||||
|
Check github for documentation.
|
||||||
|
]],
|
||||||
|
homepage = "https://github.com/rayaman/multi",
|
||||||
|
license = "MIT"
|
||||||
|
}
|
||||||
|
dependencies = {
|
||||||
|
"lua >= 5.1"
|
||||||
|
}
|
||||||
|
build = {
|
||||||
|
type = "builtin",
|
||||||
|
modules = {
|
||||||
|
["multi"] = "init.lua",
|
||||||
|
["multi.integration.lanesManager"] = "integration/lanesManager/init.lua",
|
||||||
|
["multi.integration.lanesManager.extensions"] = "integration/lanesManager/extensions.lua",
|
||||||
|
["multi.integration.lanesManager.threads"] = "integration/lanesManager/threads.lua",
|
||||||
|
["multi.integration.loveManager"] = "integration/loveManager/init.lua",
|
||||||
|
["multi.integration.loveManager.extensions"] = "integration/loveManager/extensions.lua",
|
||||||
|
["multi.integration.loveManager.threads"] = "integration/loveManager/threads.lua",
|
||||||
|
--["multi.integration.lovrManager"] = "integration/lovrManager/init.lua",
|
||||||
|
--["multi.integration.lovrManager.extensions"] = "integration/lovrManager/extensions.lua",
|
||||||
|
--["multi.integration.lovrManager.threads"] = "integration/lovrManager/threads.lua",
|
||||||
|
["multi.integration.pesudoManager"] = "integration/pesudoManager/init.lua",
|
||||||
|
["multi.integration.pesudoManager.extensions"] = "integration/pesudoManager/extensions.lua",
|
||||||
|
["multi.integration.pesudoManager.threads"] = "integration/pesudoManager/threads.lua",
|
||||||
|
["multi.integration.luvitManager"] = "integration/luvitManager.lua",
|
||||||
|
["multi.integration.threading"] = "integration/threading.lua",
|
||||||
|
--["multi.integration.networkManager"] = "integration/networkManager.lua",
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user