import java.lang.management.ThreadMXBean;
import java.lang.management.ManagementFactory;
public class StopwatchCPU {
private final ThreadMXBean threadTimer;
private final long start;
private static final double NANOSECONDS_PER_SECOND = 1000000000;
public StopwatchCPU() {
threadTimer = ManagementFactory.getThreadMXBean();
start = threadTimer.getCurrentThreadCpuTime();
}
public double elapsedTime() {
long now = threadTimer.getCurrentThreadCpuTime();
return (now - start) / NANOSECONDS_PER_SECOND;
}
}
采用JAVA8中的新api(java.time)
得到事件戳之后,在用楼上提到的方法。
据说这种方式是最快的,有人测试过。
博客是
计时用的
为什么不能毫秒数除以1000?