java可以在不依賴操作系統時間設置的情況下獲取UTC時間嗎?獲取UTC時間而不依賴操作系統時間
例如在java 8時間api Instant.now()
返回UTC的時間。如果我將操作系統中的系統時間更改爲30分鐘,它會給我UTC time + 30 minutes
。
是否有一個時鐘不依賴於哪種操作系統設置,某種機器時鐘?如果是這樣,如何從java中使用它。
java可以在不依賴操作系統時間設置的情況下獲取UTC時間嗎?獲取UTC時間而不依賴操作系統時間
例如在java 8時間api Instant.now()
返回UTC的時間。如果我將操作系統中的系統時間更改爲30分鐘,它會給我UTC time + 30 minutes
。
是否有一個時鐘不依賴於哪種操作系統設置,某種機器時鐘?如果是這樣,如何從java中使用它。
當您得到System.currentTimeMillis()
這是GMT + 0的系統/機器時鐘時間。您的機器上沒有更多的真實時間。你可以問一個時間服務器可用的時間,但它會有一些錯誤,並且有很大的延遲,你需要依賴它的準確性。
唯一可用的其他時鐘是System.nanoTime()
,它在大多數機器上是機器重置後的納秒數。它不能通過增加或減少30分鐘來改變,但它不是相對於任何標準時間,也不能糾正每天幾十毫秒的漂移。
在我腦海中彈出的唯一方法是等待服務器的時間(根據他的操作系統時間設置給出時間戳) – n247s
當在機器上安裝操作系統的時間設置從BIOS中使用時,某些那種機器時鐘? – maks