[英]threading.Timer time precision
在CPython中,threading.Timer准確性( 等待部分 )基於Condition.wait()調用。
Condition.wait()( 此處實現 )通過連續睡眠完成,延遲為min(delay * 2, remaining, .05)
,其中延遲最初設置為0.0005 # 500 us -> initial delay of 1 ms
。 根據這個實現(即OS獨立),我們可以說精確度至少是time.sleep准確性。
但是,time.sleep()的准確性是基於所使用的操作系統( 這里是實現:floatsleep() ),在Windows上,它使用帶有內部Windows計時器的WaitForSingleObject()
,在Linux上它使用select()
方法。
至少,因為除睡眠延遲之外,OS的電荷可能干擾python過程的反應性,調度算法也可能對准確性產生影響。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.