Timer: Difference between revisions

From LemonWiki共筆
Jump to navigation Jump to search
No edit summary
 
(14 intermediate revisions by the same user not shown)
Line 1: Line 1:
PHP: [http://stackoverflow.com/questions/8310487/start-and-stop-a-timer-php Start and stop a timer PHP - Stack Overflow]
Get the execution time of the script or sql query.


== PHP ==
* [http://stackoverflow.com/questions/8310487/start-and-stop-a-timer-php Start and stop a timer PHP - Stack Overflow]
* [http://stackoverflow.com/questions/6245971/accurate-way-to-measure-execution-times-of-php-scripts Accurate way to measure execution times of php scripts - Stack Overflow]


MySQL: Recording the time elapsed after the sql query was executed.
== MySQL ==
Recording the time elapsed after the sql query was executed.
<pre>
<pre>
SELECT @timer := CURRENT_TIMESTAMP();
SELECT @timer := CURRENT_TIMESTAMP();
SELECT SLEEP(2); /* sleep 2 seconds for testing purpose */
SELECT SLEEP(2); /* sleep 2 seconds for testing purpose */
SELECT 'custom message' AS 'action', CURRENT_TIMESTAMP() AS 'end time', @timer AS 'start time', TIMEDIFF(CURRENT_TIMESTAMP(), @timer) AS 'time elapsed';
SELECT 'custom message' AS 'action', CURRENT_TIMESTAMP() AS 'finish time', @timer AS 'start time', TIMEDIFF(CURRENT_TIMESTAMP(), @timer) AS 'time elapsed';
</pre>
</pre>


 
== Linux command (BASH) ==
{{Linux}} or Cygwin commands on {{Win}}<ref>[http://stackoverflow.com/questions/385408/get-program-execution-time-in-the-shell linux - Get program execution time in the shell - Stack Overflow]</ref>
{{Linux}} console, {{Mac}} Terminal or Cygwin commands on {{Win}}<ref>[http://stackoverflow.com/questions/385408/get-program-execution-time-in-the-shell linux - Get program execution time in the shell - Stack Overflow]</ref><ref>[http://stackoverflow.com/questions/12199631/convert-seconds-to-hours-minutes-seconds bash - Convert seconds to hours, minutes, seconds - Stack Overflow]</ref>
<pre>
<pre>
# start the timer
START=$(date +%s)
START=$(date +%s)
# sleep 2 seconds for testing purpose
sleep 2s
sleep 2s
# stop the timer
END=$(date +%s)
END=$(date +%s)
DIFF=$(( $END - $START ))
DIFF=$(( $END - $START ))
echo "Elapsed time $DIFF seconds"
printf "Elapsed time %02dh:%02dm:%02ds\n" $(($DIFF/3600)) $(($DIFF%3600/60)) $(($DIFF%60))
 
# expected result:
#  Elapsed time 00h:00m:02s
</pre>
 
== Windows command (DOS) ==
<pre>
REM show the start time
prompt $d $t $_$P$G
 
REM do something ...
 
REM show the finish time
prompt $d $t $_$P$G
</pre>
 
or ...<ref>[https://stackoverflow.com/questions/673523/how-do-i-measure-execution-time-of-a-command-on-the-windows-command-line batch file - How do I measure execution time of a command on the Windows command line? - Stack Overflow]</ref><ref>[https://stackoverflow.com/questions/166044/sleeping-in-a-batch-file python - Sleeping in a batch file - Stack Overflow]</ref>
<pre>
REM start to record the start time
set startTime=%time%
 
REM do something ...
 
REM show the start and finish time
echo Start Time: %startTime%
echo Finish Time: %time%
</pre>
 
== Python ==
Using [https://docs.python.org/3/library/time.html#time.time time.time()]<ref>[http://stackoverflow.com/questions/7370801/measure-time-elapsed-in-python performance - Measure time elapsed in Python? - Stack Overflow]</ref>
<pre>
import time
 
# start the timer
start = time.time()
 
# do something
 
# stop the timer
end = time.time()
print("Elapsed time in seconds: ", end - start)
</pre>
</pre>


== Javascript ==


Python: [http://stackoverflow.com/questions/7370801/measure-time-elapsed-in-python performance - Measure time elapsed in Python? - Stack Overflow]
<pre>
function sleep(ms) {
  return new Promise(resolve => setTimeout(resolve, ms));
}


// 1 second = 1000 ms
var startTimeInMs = Date.now();
await sleep(2000);
var endTimeInMs = Date.now();
var durationInMs = endTimeInMs - startTimeInMs;
console.log('durationInMs: ' + durationInMs);
var durationInSecond = durationInMs / 1000;
console.log('durationInSecond: ' + durationInSecond);
</pre>
Reference
* [https://www.educative.io/edpresso/what-is-the-javascript-alternative-to-the-sleep-function What is the Javascript alternative to the sleep function?]
* [https://www.jstips.co/zh_tw/javascript/extract-unix-timestamp-easily/ 在 JavaScript 簡單取得 unix timestamp]
== Java ==
[https://docs.oracle.com/javase/7/docs/api/java/lang/System.html#currentTimeMillis() Java.lang.System.currentTimeMillis()]
<pre>
# start the timer
long start_time = System.currentTimeMillis();
# stop the timer
System.out.println("\nElapsed time: " + (System.currentTimeMillis() - start_time) + " ms");
</pre>


References
References
Line 27: Line 111:
<References />
<References />


[[Category:Programming]] [[Category:PHP]] [[Category:MySQL]] [[Category:Tool]]
[[Category:Programming]] [[Category:PHP]] [[Category:MySQL]] [[Category:Java]] [[Category:Python]] [[Category:Bash]] [[Category:Tool]]

Latest revision as of 22:46, 27 January 2022

Get the execution time of the script or sql query.

PHP[edit]

MySQL[edit]

Recording the time elapsed after the sql query was executed.

SELECT @timer := CURRENT_TIMESTAMP();
SELECT SLEEP(2); /* sleep 2 seconds for testing purpose */
SELECT 'custom message' AS 'action', CURRENT_TIMESTAMP() AS 'finish time', @timer AS 'start time', TIMEDIFF(CURRENT_TIMESTAMP(), @timer) AS 'time elapsed';

Linux command (BASH)[edit]

Linux Os linux.png console, Mac icon_os_mac.png Terminal or Cygwin commands on Win Os windows.png [1][2]

# start the timer
START=$(date +%s)

# sleep 2 seconds for testing purpose
sleep 2s

# stop the timer
END=$(date +%s)
DIFF=$(( $END - $START ))
printf "Elapsed time %02dh:%02dm:%02ds\n" $(($DIFF/3600)) $(($DIFF%3600/60)) $(($DIFF%60))

# expected result: 
#   Elapsed time 00h:00m:02s

Windows command (DOS)[edit]

REM show the start time
prompt $d $t $_$P$G

REM do something ...

REM show the finish time
prompt $d $t $_$P$G

or ...[3][4]

REM start to record the start time
set startTime=%time%

REM do something ...

REM show the start and finish time
echo Start Time: %startTime%
echo Finish Time: %time%

Python[edit]

Using time.time()[5]

import time

# start the timer
start = time.time()

# do something

# stop the timer
end = time.time()
print("Elapsed time in seconds: ", end - start)

Javascript[edit]

function sleep(ms) {
  return new Promise(resolve => setTimeout(resolve, ms));
}

// 1 second = 1000 ms
var startTimeInMs = Date.now();

await sleep(2000);

var endTimeInMs = Date.now();
var durationInMs = endTimeInMs - startTimeInMs;
console.log('durationInMs: ' + durationInMs);

var durationInSecond = durationInMs / 1000;
console.log('durationInSecond: ' + durationInSecond);


Reference

Java[edit]

Java.lang.System.currentTimeMillis()

# start the timer
long start_time = System.currentTimeMillis();

# stop the timer
System.out.println("\nElapsed time: " + (System.currentTimeMillis() - start_time) + " ms");

References