/ / Performance frappée par l'utilisation de la conversion TimeUnit en Java - java, performance, timeunit

Les performances de l'utilisation de la conversion TimeUnit en Java sont au rendez-vous - java, performance, timeunit

Je me demandais s'il y avait un impact sur les performances (même s'il est minime) pour utiliser la conversion TimeUnit. par exemple. TimeUnit.MINUTES.toMillis (5) vs 300000

S'il s'agit d'une méthode qui sera appeléefréquemment et il doit exécuter le toMillis à chaque fois que les performances en souffrent? Ou peut-être que le compilateur définit déjà la valeur convertie une fois et qu'elle n'est plus jamais mentionnée?

Réponses:

0 pour la réponse № 1

Voici le code source de TimeUnit (JDK 10): http://hg.openjdk.java.net/jdk10/jdk10/jdk/file/tip/src/java.base/share/classes/java/util/concurrent/TimeUnit.java

Je ne peux pas dire ce que le compilateur fera mais vousil est préférable de calculer la valeur vous-même, ou de calculer et de mettre en cache la valeur, ou de créer une table de recherche à l'avance. Comme @ Turing85 l'a astucieusement souligné dans un commentaire sur votre question, "il est difficile de dire ce que le JIT fera ou ne fera pas". Ou peut-être seulement parfois. "

Plutôt que de demander toMillis isolément, vous bénéficieriez probablement plus deles réponses si vous avez publié un exemple de code pour donner du contexte à votre question. Il existe peut-être une meilleure façon d’aborder le problème global. Vous n’avez donc pas à vous soucier de détails aussi petits que les performances lors de la conversion de minutes en millisecondes.