THREAD.exposeENV(), thread:newProcessor()

This commit is contained in:
2023-05-06 16:46:15 -04:00
parent 5cc18b04ae
commit 4fe428e572
7 changed files with 144 additions and 61 deletions
+2 -1
View File
@@ -59,13 +59,14 @@ function multi:newSystemThread(name,func,...)
GLOBAL["$__THREADNAME__"] = name
GLOBAL["$THREAD_ID"] = id
GLOBAL["$thread"] = thread
local env = {
GLOBAL = GLOBAL,
THREAD = THREAD,
THREAD_NAME = name,
__THREADNAME__ = name,
THREAD_ID = id,
thread = thread
thread = thread,
}
if GLOBAL["__env"] then
+15 -4
View File
@@ -96,12 +96,23 @@ local function INIT(thread)
THREAD.hold = thread.hold
function THREAD.setENV(env)
GLOBAL["__env"] = env
function THREAD.setENV(env, name)
name = name or "__env"
GLOBAL[name] = env
end
function THREAD.getENV()
return GLOBAL["__env"]
function THREAD.getENV(name)
name = name or "__env"
return GLOBAL[name]
end
function THREAD.exposeENV(name)
name = name or "__env"
local env = THREAD.getENV(name)
for i,v in pairs(env) do
-- This may need to be reworked!
_G[i] = v
end
end
return GLOBAL, THREAD