寫了一個簡單的測試程式碼,測試了JAVA的時間更新單元,發現currentTimeMillis的更新週期大約是15或16ms,所以精度也就在15ms-16ms,低於15ms的時間是無法測量出來的。而nanoTime的更新週期大約在800-1200奈秒左右,因此低於800ns的時間無法測量出來。程式碼如下:
public class JavaTimeWinTest
{
public static void main(String[] args)
{
msTest();
nsTest();
}
private static void msTest()
{
int size = 6000000;
長[] 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 目前值:" + times[k]);
System.out.println(" 變化值:" + (times[k]-preTime));
preTime = times[k];
}
}
}
private static void nsTest()
{
int size = 50;
長[] 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 目前值:" + times[k]);
System.out.println(" 變化值:" + (times[k]-preTime));
preTime = times[k];
}
}
}
}
運行程式碼輸出結果如下:
ms 目前值:1262223891000 變化值:16
ms 目前值:1262223891015 變化值:15
ms 目前值:1262223891031 變化值:16
ms 目前值:1262223891046 變化值:15
ms 目前值:1262223891062 變化值:16
ms 目前值:1262223891078 變化值:16
ms 目前值:1262223891093 變化值:15
ms 目前值:1262223891109 變化值:16
ms 目前值:1262223891125 變化值:16
ms 目前值:1262223891140 變化值:15
ms 目前值:1262223891156 變化值:16
ms 目前值:1262223891171 變化值:15
ms 目前值:1262223891187 變化值:16
ms 目前值:1262223891203 變化值:16
ms 目前值:1262223891218 變化值:15
ms 目前值:1262223891234 變化值:16
ms 目前值:1262223891250 變化值:16
ms 目前值:1262223891265 變化值:15
ms 目前值:1262223891281 變化值:16
ms 目前值:1262223891296 變化值:15
ns 目前值:4634097766894 變化值:3631
ns 目前值:4634097768012 變化值:1118
ns 目前值:4634097769129 變化值:1117
ns 目前值:4634097769967 變化值:838
ns 目前值:4634097771085 變化值:1118
ns 目前值:4634097771923 變化值:838
ns 目前值:4634097773040 變化值:1117
ns 目前值:4634097773879 變化值:839
ns 目前值:4634097774996 變化值:1117
ns 目前值:4634097775834 變化值:838
ns 目前值:4634097776952 變化值:1118
ns 目前值:4634097777790 變化值:838
ns 目前值:4634097778907 變化值:1117
ns 目前值:4634097780025 變化值:1118
ns 目前值:4634097780863 變化值:838
ns 目前值:4634097781980 變化值:1117
ns 目前值:4634097782818 變化值:838
ns 目前值:4634097783936 變化值:1118
ns 目前值:4634097784774 變化值:838
ns 目前值:4634097785891 變化值:1117
ns 目前值:4634097786729 變化值:838
ns 目前值:4634097787847 變化值:1118
ns 目前值:4634097788685 變化值:838
ns 目前值:4634097789802 變化值:1117
ns 目前值:4634097790920 變化值:1118
ns 目前值:4634097791758 變化值:838
ns 目前值:4634097792875 變化值:1117
ns 目前值:4634097793714 變化值:839
ns 目前值:4634097794831 變化值:1117
ns 目前值:4634097795669 變化值:838
ns 目前值:4634097796787 變化值:1118
ns 目前值:4634097797625 變化值:838
ns 目前值:4634097798742 變化值:1117
ns 目前值:4634097799580 變化值:838
ns 目前值:4634097800698 變化值:1118
ns 目前值:4634097801815 變化值:1117
ns 目前值:4634097802653 變化值:838
ns 目前值:4634097803771 變化值:1118
ns 目前值:4634097804609 變化值:838
ns 目前值:4634097805726 變化值:1117
ns 目前值:4634097806564 變化值:838
ns 目前值:4634097807682 變化值:1118
ns 目前值:4634097808520 變化值:838
ns 目前值:4634097809637 變化值:1117
ns 目前值:4634097810475 變化值:838
ns 目前值:4634097811593 變化值:1118
ns 目前值:4634097812431 變化值:838
ns 目前值:4634097813548 變化值:1117
ns 目前值:4634097814666 變化值:1118
本文來自CSDN博客,轉載請標示出處:http: //blog.csdn.net/chuan122345/archive/2009/12/31/5110727.aspx