我剛剛遇到了一個莫名其妙的故障。我從週末的睡眠(可能是冬眠)中喚醒我的筆記型電腦(Windows 10),並注意到時鐘錯誤。當時是星期一下午 1:31,但我的電腦顯示時間是星期二中午 12:27 左右。呃,可能是網路錯誤。幾分鐘後回到我的辦公桌前,再仔細查看一下......在某個時刻,我注意到現在是下午1:43,但我的計算機聲稱是上午12:31,就好像它丟失了過去的8 個時間一樣12分鐘。我去了https://currentmillis.com/令我驚訝的是,毫秒計數器只是非常緩慢地增加;每秒大約 10 毫秒。 (我大約每秒截取一張螢幕截圖,大約持續10 秒,如有必要,我可以提供該螢幕截圖,但我認為它不會提供任何更有用的信息。) 實際上,它又在這樣做了。我已經啟動了一個 java 測試程序,在無限 while 循環列印中System.currentTimeMillis()
,Thread.sleep(1000);
它表現出類似的行為 - 它暫停了一些秒,然後吐出一堆時間戳記。甚至之間然而,團塊只過了幾毫秒。我在帖子末尾附上了一份日誌。在某個時刻,它開始正常工作。我注意到,回想起來,有幾秒鐘時間倒退了幾個小時,幾乎到正確的時間。我注意到的另一件事(現在又發生了)是,在奇怪的緩慢時期,Firefox、Outlook 和桌面 Windows 管理員使用了 100% 的 GPU。 100% GPU 似乎與時間惡作劇完全相關,據我所知,沒有更準確的記錄。
最終,我想知道為什麼會發生這種情況,或者它是如何發生的。重新啟動電腦導致時鐘停止表現出奇怪的行為,因此我不需要知道如何結束故障的發生,但我一開始就認為這種行為幾乎是不可能的。許多伺服器程式都依賴逾時,如果時鐘實際上停止了 13 分鐘,則可能會導致各種其他問題。我懷疑我是否能夠重現該問題,因此進一步調試是不可行的。本質上,我想知道是否有人聽說過類似的事情,或者可以根據他們對 Windows 系統時間機制的更深入工作的了解(我沒有)提出一個合理的理論。
記錄的時間戳範例:
1553575488576
1553575488584
1553575488591
1553575488599
1553575488606
1553575488614
1553575488621
1553575488628
1553575488636
1553575488643
1553575488651
1553575488658
1553575488665
1553575488673
1553575488680
1553575488688
1553575488695
1553575488703
1553575488710
1553575488717
1553575488725
1553575488732
1553575488740
1553575488747
1553575488754
1553575488762
1553575488769
1553575488777
1553575488784
1553575488791
1553575488799
1553575488806
1553575488814
1553575488821
1553575488828
1553575488836
1553575488843
1553575488851
1553575488858
1553575488865
1553575488873
1553575488880
1553575488888
1553575488895
1553575488902
1553575488910
1553575488917
1553575488925
1553575488932
1553575488940
1553575488947
1553575488955
1553575488962
1553575488969
1553575488977
1553575488984
1553575488992
1553575488999
1553575489006
1553575489014
1553575489021
1553575489029
1553575489036
1553575489044
1553575489051
1553575489058
1553575489066
1553575489073
1553575489081
1553575489088
1553575489095
1553575489103
1553575489110
1553575489118
1553575489125
1553575489132
1553575489140
1553575489147
1553575489155
1553575489162
1553575489169
1553575489177
1553575489184
1553575489192
1553575489199
1553575489206
1553575489214
1553575489221
1553575489229
1553575489236
1553575489243
1553575489251
1553575489258
1553575489265
1553575489273
1553575489280
1553575489288
1553575489295
1553575489303
1553575489310
1553575489317
1553575489325
1553575489332
1553575489340
1553575489347
1553575489354
1553575489362
1553575489369
1553575489376
1553575489384
1553575489391
1553575489399
1553575489406
1553575489413
1553575489421
1553575489428
1553575489436
1553575489443
1553575489450
1553575489458
1553575489465
1553575489473
1553575489480
1553575489487
1553575489495
1553575489502
1553575489510
1553575489517
1553575489524
1553575489532
1553575489539
1553575489547
1553575489554
1553575489561
1553575489569
1553575489576
1553575489584
1553575489591
1553575489598
1553575489606
1553575489613
1553575489621
1553575489628
1553575489635
1553575489643
1553575489650
1553575489658
1553575489665
1553575489672
1553575489680
1553575489687
1553575489695
1553575489702
1553575489709
1553575489717
1553575489724
1553575489732
1553575489739
1553575489746
1553575489754
1553575489761
1553575489769
1553575489776
1553575489783
1553575489791
1553575489798
1553575489806
1553575489813
1553575489820
1553575489828
1553575489835
1553575489843
1553575489850
1553575489857
1553575489865
1553575489872
1553575489880
1553575489887
1553575489895
1553575489902
1553575489909
1553575489917
1553575489924
1553575489932
1553575489939
1553575489946
1553575489954
1553537091156
1553537092160
1553537093161
1553537094162
1553537095163
1553537096164
1553537097164
1553537098165
1553537099174
1553537100193
1553537101196
1553537102209
1553537103214
1553537104215
1553537105216
1553537106216
1553576225618
1553576226620
1553576227623
1553576228626
1553576229628
1553576230630
1553576231632
1553576232636
1553576233639
1553576234641
1553576235644
1553576236646
1553576237648
1553576238650
編輯:我收集了更多數據並將其轉換為圖表。藍線是時間的進展,透過每秒嘗試 sysout currentTimeMillis 來計算。當時鐘出現故障時,日誌會聚集成七組左右,但仍平均每秒一行左右,因此我認為您可以將 x 軸視為以秒為單位。 (我減去了第一個時間戳,並將所有內容剪裁為 41M,因此圖中的模式是可見的。我不相信我刪除的任何資訊特別有幫助。)觀察圖表,看起來發生的事情是大約18 分鐘的周期,時鐘將正常運行5 分鐘(儘管提前約11 小時),然後是13 分鐘的非常慢的時鐘,然後短暫向後傾斜幾個小時,然後向前跳躍到一個點,就像慢速段一樣從未發生過。 (當我計算出一個週期的平均速率時,我得到了1003 ms/sample,儘管我承認記錄的採樣率和實際採樣率之間的聯繫是基於我自己的估計。儘管如此,我相信時脈速率是平均的在一個週期內達到正確的速率。 編輯:僅供參考,我今天又遇到了這個故障。可能相關:我讓筆記型電腦處於睡眠狀態大約 5 天,然後當我下次打開它時,它就出現了問題。另請注意:Windows 10 企業版,版本 1803,內部版本 17134.590。