【发布时间】:2012-08-02 19:32:07
【问题描述】:
我正在编写一个 Python 脚本,其中我有一个线程正在运行,它计算一些值并每小时创建一个图表。我想做的是在那个线程中有一个函数,告诉我在下一次更新发生之前还有多少时间。我目前的实现如下:
class StatsUpdater(threading.Thread):
def __init__(self, updateTime):
threading.Thread.__init__(self)
self.event = threading.Event()
self.updateTime = updateTime
def run(self):
while not self.event.is_set():
self.updateStats()
self.event.wait(self.updateTime)
def updateStats(self):
print "Updating Stats"
tables = SQLInterface.listTables()
for table in tables:
PlotTools.createAndSave(table)
def stop(self):
self.event.set()
所以我想要在该类中添加另一个函数,让我返回剩余时间 gefore self.event.wait(self.updateTime) 超时,如下所示:
def getTimeout(self):
return self.event.timeRemaining()
这有可能吗?
【问题讨论】:
标签: python multithreading timer timeout