在Python中有没有gobject.timeout_add()的替代方法?

0 投票
2 回答
1540 浏览
提问于 2025-04-15 20:26

我在我的项目中使用 gobject.timeout_add() 来显示一个计时器(dojotools)。

我在想有没有其他方法可以实现同样的效果,但不需要依赖 gobject。

其实我的需求就是在一定的时间间隔内重复调用一个方法。

2 个回答

1

如果你愿意使用TkInter,这个库在所有的Python版本中都可以找到(除了手机和可能一些平板),你可以使用TkInter的after()函数。
这样就可以避免使用sleep时造成的程序阻塞。

2

你可以使用一个线程,并在里面加上time.sleep(interval)来达到相同的效果。

import thread, time

def timer():
    while True:
        time.sleep(1)
        # do something here

thread.start_new_thread(timer, ())

撰写回答