古詩詞大全網 - 古詩大全 - System.nanoTime()與System.currentTimeMillis()的區別

System.nanoTime()與System.currentTimeMillis()的區別

System.nanoTime()的初始值是在 本JVM實例 啟動時"隨機"選擇的壹個數字,隨著JVM的運行而變化,System.currentTimeMillis表示系統時間,這就導致了的它們的幾個差別:

基於System.nanoTime()系統時間不敏感的特性,它被廣泛應用在需要相對時間的場景中,如ScheduledThreadPoolExecutor,在0點0分添加壹個1小時後執行的任務,那麽只有在系統運行1小時後,它才會被觸發,在此期間無論如何修改系統時間都不會影響.

填坑紀事壹次用System.nanoTime()填坑System.currentTimeMills()的實例記錄