【发布时间】:2014-04-28 20:44:55
【问题描述】:
我想用 Java 做一个秒表,它不受系统时间变化的影响。
long start = System.nanoTime();
// System time changes
long stop = System.nanoTime();
long elapsed = start - stop;
所以这段代码的问题是,当系统时间发生变化时,时间测量是错误的。
【问题讨论】:
-
不应该。
System.nanoTime()使用的源是一个对系统时间变化不敏感的计数器。无论如何 --> Guava 有Stopwatch。