我正在使用 gobject.timeout_add() 在我的项目(dojotools)中显示一个计时器。
我想知道是否有任何其他方法可以实现相同的结果,但没有 gobject 依赖项。
要求只是在一定的时间间隔内重复调用一个方法。
您可以使用带有 time.sleep(interval) 的线程来实现相同的效果。
import thread, time
def timer():
while True:
time.sleep(1)
# do something here
thread.start_new_thread(timer, ())
如果你可以使用 TkInter,它应该在所有 Python 上都可用(除了手机,也许还有一些平板电脑),你可以使用 TkInter 的after()
功能。
这将避免睡眠引起的阻塞。