Ich habe einen einfachen Testcode geschrieben und die Zeitaktualisierungseinheit von JAVA getestet. Ich habe festgestellt, dass der Aktualisierungszyklus von currentTimeMillis etwa 15 oder 16 ms beträgt, sodass die Genauigkeit nur 15 ms bis 16 ms beträgt. Der Aktualisierungszyklus von nanoTime beträgt etwa 800–1200 Nanosekunden, daher können keine Zeiten unter 800 ns gemessen werden. Der Code lautet wie folgt:
öffentliche Klasse JavaTimeWinTest
{
public static void main(String[] args)
{
msTest();
nsTest();
}
privates statisches void msTest()
{
int-Größe = 6000000;
long[] times = new long[size];
for(int k = 0;k <size;k++)
{
times[k] = System.currentTimeMillis();
}
long preTime = times[0];
for(int k = 1;k <size;k++)
{
if(times[k]>preTime)
{
System.out.print("ms aktueller Wert:" + times[k]);
System.out.println("Wert ändern:" + (times[k]-preTime));
preTime = times[k];
}
}
}
private statische Leere nsTest()
{
int-Größe = 50;
long[] times = new long[size];
for(int k = 0;k <size;k++)
{
times[k] = System.nanoTime();
}
long preTime = times[0];
for(int k = 1;k <size;k++)
{
if(times[k]>preTime)
{
System.out.print("ns aktueller Wert:" + times[k]);
System.out.println("Wert ändern:" + (times[k]-preTime));
preTime = times[k];
}
}
}
}
Die Ausgabe des Codes ist wie folgt:
ms aktueller Wert: 1262223891000 Änderungswert: 16
ms aktueller Wert: 1262223891015 Änderungswert: 15
ms aktueller Wert: 1262223891031 Änderungswert: 16
ms aktueller Wert: 1262223891046 Änderungswert: 15
ms aktueller Wert: 1262223891062 Änderungswert: 16
ms aktueller Wert: 1262223891078 Änderungswert: 16
ms aktueller Wert: 1262223891093 Änderungswert: 15
ms aktueller Wert: 1262223891109 Änderungswert: 16
ms aktueller Wert: 1262223891125 Änderungswert: 16
ms aktueller Wert: 1262223891140 Änderungswert: 15
ms aktueller Wert: 1262223891156 Änderungswert: 16
ms aktueller Wert: 1262223891171 Änderungswert: 15
ms aktueller Wert: 1262223891187 Änderungswert: 16
ms aktueller Wert: 1262223891203 Änderungswert: 16
ms aktueller Wert: 1262223891218 Änderungswert: 15
ms aktueller Wert: 1262223891234 Änderungswert: 16
ms aktueller Wert: 1262223891250 Änderungswert: 16
ms aktueller Wert: 1262223891265 Änderungswert: 15
ms aktueller Wert: 1262223891281 Änderungswert: 16
ms aktueller Wert: 1262223891296 Änderungswert: 15
ns aktueller Wert: 4634097766894 Änderungswert: 3631
ns aktueller Wert: 4634097768012 Änderungswert: 1118
ns aktueller Wert: 4634097769129 Änderungswert: 1117
ns aktueller Wert: 4634097769967 Änderungswert: 838
ns aktueller Wert: 4634097771085 Änderungswert: 1118
ns aktueller Wert: 4634097771923 Änderungswert: 838
ns aktueller Wert: 4634097773040 Änderungswert: 1117
ns aktueller Wert: 4634097773879 Änderungswert: 839
ns aktueller Wert: 4634097774996 Änderungswert: 1117
ns aktueller Wert: 4634097775834 Änderungswert: 838
ns aktueller Wert: 4634097776952 Änderungswert: 1118
ns aktueller Wert: 4634097777790 Änderungswert: 838
ns aktueller Wert: 4634097778907 Änderungswert: 1117
ns aktueller Wert: 4634097780025 Änderungswert: 1118
ns aktueller Wert: 4634097780863 Änderungswert: 838
ns aktueller Wert: 4634097781980 Änderungswert: 1117
ns aktueller Wert: 4634097782818 Änderungswert: 838
ns aktueller Wert: 4634097783936 Änderungswert: 1118
ns aktueller Wert: 4634097784774 Änderungswert: 838
ns aktueller Wert: 4634097785891 Änderungswert: 1117
ns aktueller Wert: 4634097786729 Änderungswert: 838
ns aktueller Wert: 4634097787847 Änderungswert: 1118
ns aktueller Wert: 4634097788685 Änderungswert: 838
ns aktueller Wert: 4634097789802 Änderungswert: 1117
ns aktueller Wert: 4634097790920 Änderungswert: 1118
ns aktueller Wert: 4634097791758 Änderungswert: 838
ns aktueller Wert: 4634097792875 Änderungswert: 1117
ns aktueller Wert: 4634097793714 Änderungswert: 839
ns aktueller Wert: 4634097794831 Änderungswert: 1117
ns aktueller Wert: 4634097795669 Änderungswert: 838
ns aktueller Wert: 4634097796787 Änderungswert: 1118
ns aktueller Wert: 4634097797625 Änderungswert: 838
ns aktueller Wert: 4634097798742 Änderungswert: 1117
ns aktueller Wert: 4634097799580 Änderungswert: 838
ns aktueller Wert: 4634097800698 Änderungswert: 1118
ns aktueller Wert: 4634097801815 Änderungswert: 1117
ns aktueller Wert: 4634097802653 Änderungswert: 838
ns aktueller Wert: 4634097803771 Änderungswert: 1118
ns aktueller Wert: 4634097804609 Änderungswert: 838
ns aktueller Wert: 4634097805726 Änderungswert: 1117
ns aktueller Wert: 4634097806564 Änderungswert: 838
ns aktueller Wert: 4634097807682 Änderungswert: 1118
ns aktueller Wert: 4634097808520 Änderungswert: 838
ns aktueller Wert: 4634097809637 Änderungswert: 1117
ns aktueller Wert: 4634097810475 Änderungswert: 838
ns aktueller Wert: 4634097811593 Änderungswert: 1118
ns aktueller Wert: 4634097812431 Änderungswert: 838
ns aktueller Wert: 4634097813548 Änderungswert: 1117
ns aktueller Wert: 4634097814666 Änderungswert: 1118
Dieser Artikel stammt aus dem CSDN-Blog. Bitte geben Sie beim Nachdruck die Quelle an: http://blog.csdn.net/chuan122345/archive/2009/12/31/5110727.aspx