Core.asyncCall

From GiderosMobile
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Available since: Gideros 2016.06
Class: Core

Description

Launches a function on a separate thread as a background task.

Core.asyncCall(task,parameters)

Background threads are only executed when the main thread is not running.

Parameters

task: (function) function to run in background
parameters: (multiple) multiple parameters to pass to function optional

Examples

local function scaleTextsAndBtn()
	local tempFontScale=1.02

	Core.yield(.2)
	txt1_noads:setScale(tempFontScale)
	Core.yield(.1)
	txt1_noads:setScale(1)

	txt2_plusincome:setScale(tempFontScale)
	Core.yield(.1)
	txt2_plusincome:setScale(1)

	Core.yield(.1)
	btn_OK:setScale(1.04)
	Core.yield(.2)
	btn_OK:setScale(1)
end
 
Core.asyncCall(scaleTextsAndBtn)

asyncCall used in a Class and with parameters

	if self.imgui:button("VALIDATE") then
--		self:gotoScene("levelX")
		Core.asyncCall(LevelX.gotoScene, self, "levelX") -- or self.gotoScene, ...
	end
...

-- change scene
function LevelX:gotoScene(xscene)
	scenemanager:changeScene(
		xscene, 1,
		transitions[math.random(1, #transitions)],
		easings[math.random(1, #easings)]
	)
end