Instruction java donnant le temps d'exécution

caroline -  
KX Messages postés 19031 Statut Modérateur -
Bonjour,
svp j'ai besoin d'une instruction en java ,qui me donne le temps d'un programme en cours de son exécution
par exemple dans mon programme je fais appelle a des fonction ,la fonction factoriel par exemple quand la fonction ce termine l'instruction me donne le temps d'exécution de la fonction factoriel

edit : titre.
A voir également:

2 réponses

badcommand Messages postés 87 Statut Membre 9
 
Bonjour,

long start; 

start = System.nanoTime();

Tes instructions;
long duree = System.nanoTime() - start;

System.out.println(duree);
6
caroline
 
merci beaucoup
0
steve
 
merci beaucoup
0
Nino
 
Bonjour,

je trouve que les temps d'execution sont tres différent d'une execution à une autre !! je doute de la fiabilité de cette méthode !
3
KX Messages postés 19031 Statut Modérateur 3 020
 
Les temps peuvent différer selon la charge du processeur, ce qui dépend des autres programmes sut ton ordinateur et d'un certain nombres de paramètres extérieurs, en particulier si tu fais des entrées/sorties, ou si ton programme est très rapide à s'exécuter.

C'est pour cela que pour évaluer la complexité d'un programme on n'utilise pas le temps d'exécution comme valeur de référence mais le nombre d'instructions effectués.

Remarque : System.currentTimeMillis() est très certainement suffisant dans la plupart des cas.
0