以下是生成 UUID.randomUUID()
的代码片段,我得到的性能结果(以毫秒为单位)如下:
public static void main(String[] args) {
long tmp = System.currentTimeMillis();
UUID.randomUUID();
tmp = printDiff(tmp);
UUID.randomUUID();
tmp = printDiff(tmp);
UUID.randomUUID();
tmp = printDiff(tmp);
UUID.randomUUID();
tmp = printDiff(tmp);
}
private static long printDiff(final long previousTimestamp) {
long tmp = System.currentTimeMillis();
System.out.printf("%s%n", tmp - previousTimestamp);
return tmp;
}
结果:
971
6
0
0
JDK: 1.8 操作系统: Windows 7
为什么只有初始调用需要这么长时间?(接近1秒!)