Python: 发泄和 libfaketime
Python: gevent and libfaketime
在工作中,我正在从旧版本的 Python 转换系统,作为其中的一部分,我需要将 gevent
升级到版本 21.1.2。
我们的一些测试在被测试的代码中使用了 libfaketime.fake_time
和 time.sleep
。但是,对于新的 gevent
版本,这些睡眠会永远睡眠,可能是因为时间不会改变。 time
模块确实得到了修补。
有没有办法让它休眠到规定的时间然后醒来?
使用 gevent.sleep
而不是 time.sleep
。您也可以随时将任何东西包裹在 Timeout
周围:
from gevent import sleep, Timeout
with Timeout(2, False) as timeout: # This will force it to move on after 2 seconds regardless
sleep(10)
在工作中,我正在从旧版本的 Python 转换系统,作为其中的一部分,我需要将 gevent
升级到版本 21.1.2。
我们的一些测试在被测试的代码中使用了 libfaketime.fake_time
和 time.sleep
。但是,对于新的 gevent
版本,这些睡眠会永远睡眠,可能是因为时间不会改变。 time
模块确实得到了修补。
有没有办法让它休眠到规定的时间然后醒来?
使用 gevent.sleep
而不是 time.sleep
。您也可以随时将任何东西包裹在 Timeout
周围:
from gevent import sleep, Timeout
with Timeout(2, False) as timeout: # This will force it to move on after 2 seconds regardless
sleep(10)