Communauté sur les Eggdrops - Community about Eggdrops
Test de rapidité... - Printable Version

+- Communauté sur les Eggdrops - Community about Eggdrops (https://forum.eggdrop.fr)
+-- Forum: Eggdrop et TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=8)
+--- Forum: Scripts TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=4)
+--- Thread: Test de rapidité... (/showthread.php?tid=107)



Test de rapidité... - MenzAgitat - 20/11/2007

Â
Lorsque vous avez la possibilité de choisir entre plusieurs méthodes pour effectuer la même tâche, comment choisir la bonne ?

La bonne technique est évidemment celle qui s'exécutera le plus rapidement.
Vous pouvez tester la rapidité d'exécution de ce que vous voulez avec ce petit script.


tcl
# TimeIt v1.0 par MenzAgitat
 
bind dcc m chrono chronoprocess
 
proc chronoprocess {hand idx arg} {
	if { ($arg == "") || (![regexp {^[0-9]+$} [lindex $arg 0]])} { putlog "\037Syntaxe\037 : .chrono \00314<\003nombre de répétitions\00314><\003commandes\00314>\003" ; return }
	set chrono_timestart [clock clicks -milliseconds]
	for { set chrono_counter 1 } { $chrono_counter <= [lindex $arg 0] } { incr chrono_counter } { eval [lrange $arg 1 end] }
	putlog "\00314Temps d'exécution sur [lindex $arg 0] itérations :\003 [expr [expr [clock clicks -milliseconds]-$chrono_timestart]/1000.00]s"
}
 
putlog "TimeIt v1.0 (par MenzAgitat) a été chargé."


Exemple : .chrono 10000 set test "ceci est un test"
-> Temps d'exécution sur 10000 itérations : 0.018s

Désormais, vous n'aurez plus d'excuses pour ne pas optimiser vos scripts ;)