Difference between revisions of "Thread"
(reorder functions by name) |
m (Text replacement - "</source>" to "</syntaxhighlight>") |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 5: | Line 5: | ||
=== Description === | === Description === | ||
− | The ''Threads'' plugin provides the ability to run Lua code in separate threads, taking advantage of multiple cores where available. | + | The '''Threads''' plugin provides the ability to run Lua code in separate threads, taking advantage of multiple cores where available. |
+ | |||
+ | To add the '''Threads''' plugin to your application you call: | ||
+ | <syntaxhighlight lang="lua"> | ||
+ | require "Threads" | ||
+ | </syntaxhighlight> | ||
=== Example === | === Example === | ||
− | '''Simple example of getting result from thread''' | + | '''Simple example of getting result from a thread''' |
− | < | + | <syntaxhighlight lang="lua"> |
+ | require "Threads" | ||
local thread = Thread.new() | local thread = Thread.new() | ||
thread:setFunction(function() | thread:setFunction(function() | ||
Line 19: | Line 25: | ||
local ok = false | local ok = false | ||
while not ok do ok = thread:getResult() end | while not ok do ok = thread:getResult() end | ||
− | print(" | + | print("end") |
− | </ | + | </syntaxhighlight> |
{|- | {|- |
Latest revision as of 14:33, 13 July 2023
Supported platforms:
Available since: 2018.10
Description
The Threads plugin provides the ability to run Lua code in separate threads, taking advantage of multiple cores where available.
To add the Threads plugin to your application you call:
require "Threads"
Example
Simple example of getting result from a thread
require "Threads"
local thread = Thread.new()
thread:setFunction(function()
local a = 0
for i = 1, 10000000 do a += 1 end
return i
end)
thread:execute()
local ok = false
while not ok do ok = thread:getResult() end
print("end")
MethodsThread.new creates a new thread object Thread:execute starts/executes the thread |
EventsConstants |