В ванильной - нету. Это - просто инициализация виртуальной машины. Попробуй туда ещё провесить пайпы и открытие потоков из самой Lua. Кстати, смотри на 5.1: https://www.lua.org/manual/5.1/manual.html#lua_newstate
А ты попробуй сделать что-то такое в 5.3: Thread = require'thread' local audiothread = {} audiothread.func = [[ require'love.sound' require'love.audio' require'love.timer' local sound = love.audio.newSource('sound.ogg') while true do data = thread:pop() -- threads has access to special object if data == 'play' then sound:play() thread:push('Yea!') end love.timer.sleep(.01) end ]] function audiothread.receive(msg) print(msg) end -- name, thread function and set of callbacks {receive, finish} music = Thread('Music', audiothread.func, {receive = audiothread.receive}) music:send('play') while true do music:update() end Вот так выглядит многопоточность из-Lua в Love2d: код треда подгружается как строка и отправляется на исполнение новому LuaState. Но в 5.3 так не получится, там вместо многопоточности - корутины (такие же как в 5.1).
Обсуждают сегодня