newProxy and STP work

This commit is contained in:
2023-05-16 23:40:14 -04:00
parent 160c72d2f3
commit ea4be86ae2
13 changed files with 138 additions and 81 deletions
+3 -3
View File
@@ -124,7 +124,7 @@ function multi:newSystemThreadedJobQueue(n)
end)
return thread.hold(function()
if rets then
return unpack(rets) or multi.NIL
return multi.unpack(rets) or multi.NIL
end
end)
end,holup),name
@@ -134,7 +134,7 @@ function multi:newSystemThreadedJobQueue(n)
thread.yield()
local dat = c.queueReturn:pop()
if dat then
c.OnJobCompleted:Fire(unpack(dat))
c.OnJobCompleted:Fire(multi.unpack(dat))
end
end
end)
@@ -177,7 +177,7 @@ function multi:newSystemThreadedJobQueue(n)
lastProc = os.clock()
local name = table.remove(dat,1)
local id = table.remove(dat,1)
local tab = {funcs[name](unpack(dat))}
local tab = {funcs[name](multi.unpack(dat))}
table.insert(tab,1,id)
queueReturn:push(tab)
end
+2 -2
View File
@@ -36,7 +36,7 @@ __THREADNAME__=table.remove(__IMPORTS,1)
stab = THREAD.createStaticTable(__THREADNAME__)
GLOBAL = THREAD.getGlobal()
multi, thread = require("multi").init()
stab["returns"] = {THREAD.loadDump(__FUNC__)(unpack(__IMPORTS))}
stab["returns"] = {THREAD.loadDump(__FUNC__)(multi.unpack(__IMPORTS))}
]]
local multi, thread = require("multi.compat.lovr2d"):init()
local THREAD = {}
@@ -58,7 +58,7 @@ function THREAD:newFunction(func,holup)
if t.stab["returns"] then
local dat = t.stab.returns
t.stab.returns = nil
return unpack(dat)
return multi.unpack(dat)
end
end)
end,holup)()
+1 -1
View File
@@ -174,7 +174,7 @@ if not ISTHREAD then
dat = queue:pop()
if dat then
lastproc = clock()
print(unpack(dat))
print(multi.unpack(dat))
end
if clock()-lastproc>2 then
thread.sleep(.1)