ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Standard functions / Date and time functions
  • Error
  • Threads and parallel tasks
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Starts a stopwatch to measure the duration of a process (in milliseconds) and resets a running stopwatch. The timing is stopped: If timing is stopped, it can be restarted with ChronoResume.
The value of the stopwatch can be read at any time:
Example
// Start the stopwatch
ChronoStart()
MyFunction()
// Stop the stopwatch
DurationMyFunction is Duration = ChronoEnd()
Info("The MyFunction() process lasted " + DurationMyFunction)
// Start the first stopwatch
ChronoStart(1)
// Start the second stopwatch
ChronoStart(2)
// Stop the first stopwatch
DurationChronoStart is Duration = ChronoEnd(1)
MyFunction()
// Stop the second stopwatch
DurationMyFunction is Duration = ChronoEnd(2)
Info("MyFunction() process lasted" + DurationMyFunction, ...
"The whole process lasted " + DurationChronoStart)
Reports and QueriesWindowsLinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystJavaUser code (UMC)
MyChrono1 is Chrono
MyChrono2 is Chrono
// Start the first stopwatch
ChronoStart(MyChrono1)
// Start the second stopwatch
ChronoStart(MyChrono2)
// Stop the first stopwatch
DurationChronoStart is Duration = ChronoEnd(MyChrono1)
MyFunction()
// Stop the second stopwatch
DurationMyFunction is Duration = ChronoEnd(MyChrono2)
Info("The MyFunction() process lasted " + DurationMyFunction, ...
"The whole process lasted " + DurationChronoStart)
Syntax

Timing with a stopwatch number Hide the details

ChronoStart([<Stopwatch number>])
<Stopwatch number>: Optional integer
Identifier of stopwatch used.
If this parameter is not specified, its default value is set to 1.
If this number corresponds to a running stopwatch, it is reset to zero.
Reports and QueriesWindowsLinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystJavaUser code (UMC)

Timing with a Chrono variable Hide the details

ChronoStart(<Stopwatch>)
<Stopwatch>: Chrono variable
Name of the Chrono variable that corresponds to the stopwatch to use.
Remarks

Error

A WLanguage error occurs ("The stopwatch is not started") if ChronoStart was not called before ChronoValue and ChronoEnd.

Threads and parallel tasks

Each thread (and each parallel task) includes its own stopwatches.
Two distinct threads (or two distinct parallel tasks) can perform separate timings by using the same stopwatch number.
The WLanguage error "The stopwatch is not started" will occur only if ChronoStart is not called in the same thread (or in the same parallel task) as ChronoValue and ChronoEnd.
Related Examples:
The Chrono functions Unit examples (WINDEV): The Chrono functions
[ + ] Using the ChronoXXX functions.
These functions are used to calculate the time passed between the start (ChronoStart) and the end (ChronoEnd).
Calculations on durations Unit examples (WINDEV): Calculations on durations
[ + ] Calculations on dates and times with the WLanguage functions:
- Calculate the duration between two moments (dates and times)
- Calculate a sum of durations
- Calculate an average of durations
The Chrono functions Unit examples (WINDEV Mobile): The Chrono functions
[ + ] Using the WLanguage "Chrono" functions.
These functions are used to calculate the time passed between the start (ChronoStart) and the end (ChronoEnd).
UWA Stopwatch Universal Apps (WINDEV Mobile): UWA Stopwatch
[ + ] This example explains how to create a stopwatch for a mobile device with WINDEV Mobile.
In this example, a timer is used to display the hands of the stopwatch and to display the time passed on a regular basis.
Business / UI classification: Neutral code
Component: wd290vm.dll
Minimum version required
  • Version 10
This page is also available for…
Comments
Video ChronoStart
https://youtu.be/HsQBVdHh_PE
https://windevdesenvolvimento.blogspot.com/2019/07/dicas-2207-windev-webdev-mobile.html
//PROCEDURE CONTADOR_TEMPO()
nCONTADOR is int=0
LOOP
Message(nCONTADOR)
nCONTADOR++
IF nCONTADOR>6000 THEN
BREAK
END
END
// BTN_CONTADOR_TEMPO
ChronoStart()
CONTADOR_TEMPO()
duRacao_tempo is Duration=ChronoEnd()
Info("TEMPO:"+duRacao_tempo..Hour+"HR "+duRacao_tempo..Minute+"MI "+duRacao_tempo..Second)
amarildo
19 Jul. 2019

Last update: 06/22/2023

Send a report | Local help