summaryrefslogtreecommitdiff
path: root/builtin/async_env.lua
diff options
context:
space:
mode:
Diffstat (limited to 'builtin/async_env.lua')
-rw-r--r--builtin/async_env.lua19
1 files changed, 19 insertions, 0 deletions
diff --git a/builtin/async_env.lua b/builtin/async_env.lua
new file mode 100644
index 000000000..afc69219c
--- /dev/null
+++ b/builtin/async_env.lua
@@ -0,0 +1,19 @@
+engine.log("info","Initializing Asynchronous environment")
+
+dofile(SCRIPTDIR .. DIR_DELIM .. "misc_helpers.lua")
+
+function engine.job_processor(serialized_function, serialized_data)
+
+ local fct = marshal.decode(serialized_function)
+ local params = marshal.decode(serialized_data)
+ local retval = marshal.encode(nil)
+
+ if fct ~= nil and type(fct) == "function" then
+ local result = fct(params)
+ retval = marshal.encode(result)
+ else
+ engine.log("error","ASYNC WORKER: unable to deserialize function")
+ end
+
+ return retval,retval:len()
+end