如何在Mac上使用Java获得纳秒分辨率

时间:2013-09-26 18:04:09

标签: java macos

我只能在Mac OS 10.8.5上的Eclipse(Juno和Kepler)中调用System.nanoTime()获得微秒分辨率。有没有办法获得纳秒分辨率?

for (int i = 1; i < 1000; i++) {
    if (System.nanoTime() % 1000 != 0) {
        System.out.println("Got one");
    }
}

1 个答案:

答案 0 :(得分:1)

根据this错误报告,您将在JDK 8u20的Mac OS X上获得更合适的System.nanoTime()

简要mach_absolute_time与警卫一起使用(因为它具有特定的CPU),所以它不能倒退(在多核系统上)。

在JDK8 here中查看实现此代码的实际代码。