JVM 是否保持其时间与 OS 同步?

Does the JVM keep its time synced with the OS?

我正在开发一个以时间为中心的应用程序。我的代码经常调用 System.currentTimeMillis()System.nanoTime()

所以我想确保这些时间戳调用与 OS 完美同步。 JVM 何时以及如何同步其时​​钟?在启动时或每次调用这两个方法时?

我的 OS 时间与 NTP 服务器完美同步。

时间由OS提供。 JVM 没有自己的时钟而不是 OS 时钟。

每个 OS、System.currentTimeMillis()System.nanoTime() 都有一个实现。

几个 System::nanoTime 实现的例子:

On Linux

On windows

On AIX