【发布时间】:2011-05-27 18:43:32
【问题描述】:
我需要一个类似于gobject.io_add_watch 的函数,但需要一个变量。例如,它需要观察变量stop 初始化为stop = False,并且当stop 更改为True 时,它必须调用一个函数。我不能有一个单独的线程在一个带有 time.sleep 的循环中监视变量。
有这样的功能或方法吗?
【问题讨论】:
-
只有
.stop()会是一种更具解释性和逻辑性的方式; “停止”是你要做的事情,它触发的动作可能很昂贵,而仅仅设置一个变量通常很便宜(我意识到在这个用例中人们应该意识到它会做什么,但原则是成立的)。x.stop()和x.start()比x.stop = True和x.stop = False或x.running = False和x.running = True或等效项更整洁。 -
尽管我展示了如何做到这一点,但我同意你的观点。当然,该技术还有其他更好的应用。 :)