Timer
The Timer object is used to create delays or trigger events after a defined elapsed time. It should be used instead of Lua's native delay and time functions.
Creates a simple timer that calls a named function after a specified delay time.
Description
As an alternative to creating a traditional named timer, you can create a simple timer to call a named function after a given delay period. Unlike named timer objects created with Timer.New(), there is no need to issue a :Stop() command to halt repetition of this timer.
Syntax
Timer.CallAfter(function, delay)
Arguments
function : The named function to call after the specified delay time.
delay : [seconds.milliseconds]
Creates a named timer using Start and Stop methods.
Description
Each Timer must be named when created which is then the means by which you manipulate each specific timer. The Timer:Start
method is used to start the timer and set the delay time. When the delay time has elapsed, the function specified in Timer.EventHandler is called. By default, Timer repeats when it has elapsed. Timer.Stop is used to stop the timer. Each Control Script has a single Timer.
Syntax
Timer.New()
Creates a new timer object.
.EventHandler
Calls a specified function when the delay time has elapsed.
:Start(period in seconds)
Starts the timer.
:Stop()
Stops the timer.
Example
timer1 = Timer.New()
timer2 = Timer.New()
function timerFunc(timer)
if timer == timer1 then
print( "timer 1!" )
elseif timer == timer2 then
print ( "timer 2" )
end
end
timer1.EventHandler = timerFunc
timer2.EventHandler = timerFunc
timer1:Start(1)
timer2:Start(2)
Returns the number of seconds since epoch.
Description
Timer.Now() returns the number of seconds since the epoch. It can be useful to calculate the difference between a current value and a previous value.
Note: The returned epoch value differs between Emulation mode (from Windows) and Run mode (from the Q-SYS Core processor).
Syntax
Timer.Now()
Example
print (Timer.Now())
Debug Output
2021-11-22T23:16:08.884 Starting Script 2021-11-22T23:16:08.884 13282096568.884