如果我運行一些類似Sleep(10000)的操作,並且系統時鐘在此期間發生更改,那麼線程是否仍會睡眠10秒的掛鐘時間或更少或更多?即Sleep()函數是否將毫秒轉換爲硬件滴答?在時鐘漂移過程中,Windows C/Sleep()函數如何工作?
2
A
回答
8
Sleep()與掛鐘時間無關。它基於用於線程調度的相同定時器。
由於系統時鐘的頻率以及在超時時間之後實際上計劃運行的時間,您幾乎不會睡10秒。
3
這是沒有記錄在任何我知道的,但是,你可以放心地假設如此。如果不這樣做,這將是相當具有破壞性的,每年兩次白天過渡發生。這是文件中等效內核函數,KeDelayExecutionThread的時間間隔參數:
指定絕對或相對時間,以100納秒,爲此等待將要發生的單位。負值表示相對時間。絕對到期時間跟蹤系統時間的任何變化;相對過期時間不受系統時間變化的影響。
相關問題
- 1. 時鐘函數usleep在c程序中不能正常工作?
- 2. 添加了xp的時鐘漂移
- 3. 如何處理亞馬遜ec2的時鐘漂移?
- 4. 如何在C工作中製作數字時鐘
- 5. 措施,時鐘漂移在Linux服務器,PTP/NTP時鐘參考
- 6. System.Threading.Timer調用每天漂移幾秒鐘
- 7. Interpolaton算法來糾正輕微的時鐘漂移
- 8. 調度週期性任務和時鐘漂移
- 9. 卸載過程如何在Windows中工作?
- 10. 我是否正確實施時鐘漂移?
- 11. 時鐘不工作?
- 12. ALSA採樣率漂移與單調時鐘
- 13. NTP時鐘紀律如何工作?
- 14. LPtoDP函數如何工作?
- 15. 如何避免GPS在android中漂移?
- 16. Java:時間漂移
- 17. 函數過載如何工作
- 18. 如何在C編程中製作小時,分鐘偏移標誌
- 19. Observable.Timer():如何避免計時器漂移?
- 20. VMWare Windows 7中的巨大時間漂移guest
- 21. Mongo $ currentDate是否受時鐘漂移影響?
- 22. max()函數在Jython中如何工作?
- 23. dist函數在MATLAB中如何工作?
- 24. scanf函數在C中如何工作?
- 25. malloc函數如何在C中工作?
- 26. 在Swift中,forEach函數如何工作
- 27. rem函數如何在matlab中工作
- 28. Distinct()函數在Spark中如何工作?
- 29. scanf函數如何在C中工作?
- 30. LN()函數如何在Excel中工作?
如果他們是獨立的,那麼如果在午夜(00:00:00)我做睡眠(10000),五秒鐘後(00:00:05),我將系統時鐘重置爲午夜(00:00) :00),那麼這是否意味着在睡眠(10000)醒來之前將有15秒的掛鐘時間過去?該機制與Windows時間服務實現的漂移有什麼不同? – 2010-06-15 15:57:23
睡眠不使用WTS。它基於系統時鐘節拍和節拍頻率。系統時鐘的這種用法不應與牆上的時鐘混淆。 – user7116 2010-06-15 16:05:28