[英]What does time.sleep(10) in python do during daylight savings time?
如果在將時間設置為向前一小時之前是5秒,則time.sleep(10)會休眠10秒鍾還是5秒鍾? (五秒鍾后,時間從開始起超過十秒鍾)。
如果在將時間倒退一個小時之前需要5秒鍾,那么time.sleep(10)睡眠10秒鍾,或者一個小時又10秒鍾? (至少從時鍾開始,當前時間要比開始時間多花10秒鍾以上,這需要額外一個小時)
為了完整起見,像我們剛才那樣,sleep睡幾秒鍾會做什么?
是否有任何時間time.sleep不能完成請求的操作?
我仍然使用python 2.7。
正如time.sleep()
文件所說:
在給定的秒數內暫停當前線程的執行。
time.sleep()
與時區或系統時間無關。 在調用它時,它將在指定的秒數內暫停當前線程的執行。
回答您的問題“在那個時間是否有任何時間time.sleep
不期望做請求的事情?” 也可以在文檔中找到 :
實際的暫停時間可能少於請求的暫停時間,因為任何捕獲到的信號都會在執行該信號的捕獲例程后終止sleep()。
但這在3.5版中進行了更改,並且即使睡眠被信號中斷,函數也會睡眠至少幾秒鍾,除非信號處理程序引發異常(有關原理,請參閱PEP 475 )。
注意: 由於系統中安排了其他活動,因此暫停時間可能比請求的時間長任意數量
time.sleep(10)
不查看“ wall time”; 它的“ CPU時間”為10秒。 (這里有關於此准確性的討論: python的time.sleep()有多精確? )
自“歷元”(通常是1970年1月1日UTC)以來,大多數計算機都以秒或毫秒為單位跟蹤時間。
將時區設置為UTC以外的其他位置實際上不會更改系統時鍾。 系統時鍾繼續以UTC運行。 取而代之的是,計算機只是記住您(用戶)想要查看某個特定時區的時間,並在需要時將UTC系統時間轉換為您首選的時區。
因此,睡眠功能不受夏令時更改影響的原因是計算機會計算相對於系統時鍾的喚醒時間,該時間始終為UTC。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.