J'ai écrit un code de test simple et testé l'unité de mise à jour temporelle de JAVA. J'ai découvert que le cycle de mise à jour de currentTimeMillis est d'environ 15 ou 16 ms, donc la précision n'est que de 15 ms à 16 ms. Un temps inférieur à 15 ms ne peut pas être mesuré. Le cycle de mise à jour de nanoTime est d'environ 800 à 1 200 nanosecondes, donc des temps inférieurs à 800 ns ne peuvent pas être mesurés. Le code est le suivant :
classe publique JavaTimeWinTest
{
public static void main (String[] arguments)
{
msTest();
nsTest();
}
vide statique privé msTest()
{
taille int = 6 000 000 ;
long[] fois = nouveau long[taille];
pour(int k = 0;k <taille;k++)
{
times[k] = System.currentTimeMillis();
}
long preTime = fois[0];
pour(int k = 1;k <taille;k++)
{
si (fois [k]> préTime)
{
System.out.print("valeur actuelle ms :" + times[k]);
System.out.println("Modifier la valeur :" + (times[k]-preTime));
preTime = fois[k];
}
}
}
vide statique privé nsTest()
{
taille entière = 50 ;
long[] fois = nouveau long[taille];
pour(int k = 0;k <taille;k++)
{
fois[k] = System.nanoTime();
}
long preTime = fois[0];
pour(int k = 1;k <taille;k++)
{
si (fois [k]> préTime)
{
System.out.print("ns valeur actuelle :" + times[k]);
System.out.println("Modifier la valeur :" + (times[k]-preTime));
preTime = fois[k];
}
}
}
}
Le résultat de l’exécution du code est le suivant :
ms valeur actuelle : 1262223891000 valeur de modification : 16
ms valeur actuelle : 1262223891015 valeur de changement : 15
ms valeur actuelle : 1262223891031 valeur de modification : 16
ms valeur actuelle : 1262223891046 valeur de changement : 15
ms valeur actuelle : 1262223891062 valeur de modification : 16
ms valeur actuelle : 1262223891078 valeur de changement : 16
ms valeur actuelle : 1262223891093 valeur de changement : 15
ms valeur actuelle : 1262223891109 valeur de changement : 16
ms valeur actuelle : 1262223891125 valeur de changement : 16
ms valeur actuelle : 1262223891140 valeur de changement : 15
ms valeur actuelle : 1262223891156 valeur de modification : 16
ms valeur actuelle : 1262223891171 valeur de modification : 15
ms valeur actuelle : 1262223891187 valeur de modification : 16
ms valeur actuelle : 1262223891203 valeur de changement : 16
ms valeur actuelle : 1262223891218 valeur de changement : 15
ms valeur actuelle : 1262223891234 valeur de changement : 16
ms valeur actuelle : 1262223891250 valeur de modification : 16
ms valeur actuelle : 1262223891265 valeur de changement : 15
ms valeur actuelle : 1262223891281 valeur de modification : 16
ms valeur actuelle : 1262223891296 valeur de changement : 15
ns valeur actuelle : 4634097766894 valeur de changement : 3631
ns valeur actuelle : 4634097768012 valeur de changement : 1118
ns valeur actuelle : 4634097769129 valeur de changement : 1117
ns valeur actuelle : 4634097769967 valeur de changement : 838
ns valeur actuelle : 4634097771085 valeur de changement : 1118
ns valeur actuelle : 4634097771923 valeur de changement : 838
ns valeur actuelle : 4634097773040 valeur de changement : 1117
ns valeur actuelle : 4634097773879 valeur de changement : 839
ns valeur actuelle : 4634097774996 valeur de changement : 1117
ns valeur actuelle : 4634097775834 valeur de changement : 838
ns valeur actuelle : 4634097776952 valeur de changement : 1118
ns valeur actuelle : 4634097777790 valeur de changement : 838
ns valeur actuelle : 4634097778907 valeur de changement : 1117
ns valeur actuelle : 4634097780025 valeur de changement : 1118
ns valeur actuelle : 4634097780863 valeur de changement : 838
ns valeur actuelle : 4634097781980 valeur de changement : 1117
ns valeur actuelle : 4634097782818 valeur de changement : 838
ns valeur actuelle : 4634097783936 valeur de changement : 1118
ns valeur actuelle : 4634097784774 valeur de changement : 838
ns valeur actuelle : 4634097785891 valeur de changement : 1117
ns valeur actuelle : 4634097786729 valeur de changement : 838
ns valeur actuelle : 4634097787847 valeur de changement : 1118
ns valeur actuelle : 4634097788685 valeur de changement : 838
ns valeur actuelle : 4634097789802 valeur de changement : 1117
ns valeur actuelle : 4634097790920 valeur de changement : 1118
ns valeur actuelle : 4634097791758 valeur de changement : 838
ns valeur actuelle : 4634097792875 valeur de changement : 1117
ns valeur actuelle : 4634097793714 valeur de changement : 839
ns valeur actuelle : 4634097794831 valeur de changement : 1117
ns valeur actuelle : 4634097795669 valeur de changement : 838
ns valeur actuelle : 4634097796787 valeur de changement : 1118
ns valeur actuelle : 4634097797625 valeur de changement : 838
ns valeur actuelle : 4634097798742 valeur de changement : 1117
ns valeur actuelle : 4634097799580 valeur de changement : 838
ns valeur actuelle : 4634097800698 valeur de changement : 1118
ns valeur actuelle : 4634097801815 valeur de changement : 1117
ns valeur actuelle : 4634097802653 valeur de changement : 838
ns valeur actuelle : 4634097803771 valeur de changement : 1118
ns valeur actuelle : 4634097804609 valeur de changement : 838
ns valeur actuelle : 4634097805726 valeur de changement : 1117
ns valeur actuelle : 4634097806564 valeur de changement : 838
ns valeur actuelle : 4634097807682 valeur de changement : 1118
ns valeur actuelle : 4634097808520 valeur de changement : 838
ns valeur actuelle : 4634097809637 valeur de changement : 1117
ns valeur actuelle : 4634097810475 valeur de changement : 838
ns valeur actuelle : 4634097811593 valeur de changement : 1118
ns valeur actuelle : 4634097812431 valeur de changement : 838
ns valeur actuelle : 4634097813548 valeur de changement : 1117
ns valeur actuelle : 4634097814666 valeur de changement : 1118
Cet article provient du blog CSDN Veuillez indiquer la source lors de la réimpression : http://blog.csdn.net/chuan122345/archive/2009/12/31/5110727.aspx.