Multithreading library for gmod and starfall using effil.
It may have better performance than lanes.
Prebuilt binaries can be found in tab Actions above.
Put dll files into garrysmod/lua/bin and you are good to go.
To enable starfall support, put starfall/effil.lua into garrysmod/lua/addons/StarfallEx/lua/starfall/libs_sh.
require("effil")
local f = effil.thread(function(n) return n * 2 end)
local handle = f(15)
local handle2 = f(30)
print(handle:get(), handle2:get())Effil documentation can be found in here.
premake5 and an available build tool (such as Visual Studio 2022 or gcc with make).
-
Clone the repository and the submodules recursively.
-
Apply the patch
0001-fix-luaL_loadbufferx-redefinition.patchtoeffil/libs/sol. -
Run
premake5to configure. -
Build.
Default settings are whitelisted users only.
See starfall/effil.lua for more information.