高效的状态变化超时等待方法?
我相信这个问题应该挺常见的,所以我想知道在Python中,有哪些被接受的或高效的方法来处理这个。
简单来说,我就是在不停地等待一个变量被更新。同时,我需要一个超时机制,但我觉得应该有更好的方法来做到这一点。
目前我做的方式是这样的:
wait_start = time.time()
while state != NEW_STATE:
if time.time() - wait_start > timeout:
print "Timed out!"
# Do something
# Continuing on...
显然,我不能就这样睡觉,因为我需要知道状态什么时候发生了变化。
那么,有什么高效的方法可以实现状态(变量)变化的超时呢?