From Xojo Documentation
Yields time back to your app so that it can handle other events.
By design, console applications do not have a main event loop. It implies that classes relying on such event loop will not work as expected.
You can call DoEvents in the Run event of your console application to create your own main event loop. If you use Timers or sockets in a console application and fail to periodically call App.DoEvents, sockets will not work and Timer.Action will never fire.
Specifying zero milliseconds causes the next waiting thread to execute. A negative value specifies no sleep. The default is -1.
Var consoleTimer As New MyTimerSubclass
consoleTimer.RunMode = Timer.RunModes.Multiple // Don't forget this one
consoleTimer.Period = 1000 // Call every second
where myTimerSubclass is a subclass of Timer whose Action event holds the code you want to run each time the timer is called. Since this creates an infinite loop, press Control-C in the terminal to stop the app.