System.nanoTime()是否在线程间保持一致?

Hel*_*iro 11 java multithreading timestamp nanotime

我想计算两个事件之间经过的时间,以纳秒为单位.要做到这一点,我可以使用这里System.nanoTime()提到的.问题是这两个事件发生在不同的线程中.


由于nanoTime()不返回绝对时间戳,而只能用于计算时间,我想知道我在两个不同线程上获得的值是否与两个事件之间经过的物理时间一致.

Ste*_*ker 11

应该是,但由于有缺陷的内核或硬件,答案可能是否定的,至少在某些环境中.