在python threading.Event中使用单调时间

时间:2019-01-16 06:21:43

标签: python python-3.x

(在python3.6 / ubuntu 16.04上运行)

我正在使用python threading.Event等待事件X时间。 我注意到在等待期间更改系统时间会影响等待时间:

import threading
def waiter():
    e = threading.Event()
    print("wait 60 seconds")
    e.wait(60.0)
import os
import time
def changer():
    for x in range(5):
        os.system("/bin/date -s 2019-01-08T05:17:03.000")
        time.sleep(1)
        os.system("/bin/date -s 2019-01-08T07:17:03.000")
t1 = threading.Thread(target=waiter)
t2 = threading.Thread(target=changer)
t2.start(); time.sleep(0.5);  t1.start(); t1.join(); t2.join()

我有点困惑。事件是使用单调时间(PEP 418)实现的吗?为什么这段代码要花几秒钟才能完成,而至少需要60秒呢?

0 个答案:

没有答案