Maison > Java > javaDidacticiel > Comment puis-je mesurer avec précision le temps écoulé en Java ?

Comment puis-je mesurer avec précision le temps écoulé en Java ?

Barbara Streisand
Libérer: 2024-12-31 12:14:14
original
815 Les gens l'ont consulté

How Can I Accurately Measure Elapsed Time in Java?

Mesurer le temps écoulé en Java

En Java, mesurer le temps écoulé avec précision nécessite de comprendre la distinction entre le temps écoulé et l'heure de l'horloge murale. Bien que de nombreuses réponses suggèrent d'utiliser System.currentTimeMillis(), il est crucial de noter qu'il mesure l'heure de l'horloge murale, qui peut être affectée par les corrections d'horloge.

Pour mesurer correctement le temps écoulé, System.nanoTime() doit être utilisé. Cette API est spécialement conçue pour quantifier le temps écoulé et n'est pas affectée par les corrections d'horloge. Par conséquent, il fournit des lectures plus précises que System.currentTimeMillis().

En ce qui concerne votre exemple de code, pour capturer la durée écoulée entre startTime et endTime, vous pouvez utiliser l'approche suivante :

public class Stream {
    private long startTime;
    private long endTime;

    public void start() {
        startTime = System.nanoTime();
    }

    public void end() {
        endTime = System.nanoTime();
    }

    public long getDuration() {
        return (endTime - startTime);
    }
}
Copier après la connexion

Dans cet exemple, vous pouvez modifier les valeurs startTime et endTime dans les méthodes start() et end() lorsque vous souhaitez commencer et terminer votre mesure du temps. La méthode getDuration() renvoie le temps écoulé en nanosecondes, qui peut être converti en d'autres unités si vous le souhaitez.

N'oubliez pas que pour une mesure précise du temps écoulé, il est essentiel d'utiliser System.nanoTime() et d'éviter de vous fier à System.currentTimeMillis(), qui est sensible aux corrections d'horloge.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal