我是twisted 和python 的新手,我正在阅读twisted python。
挂号电话
reactor.callLater(_interval, self.count, *args)
我创建了 Countdown 类,它包含计数函数,我调用了它三次
reactor.callWhenRunning(Countdown().count, 1)
reactor.callWhenRunning(Countdown().count, 2)
reactor.callWhenRunning(Countdown().count, 3)
具有不同的时间间隔,我需要在所有呼叫完成后停止反应器。因此,在扭曲的 API 中有一些方法可以知道所有调用已完成。
我的代码是
class Countdown(object):
counter = 5
def count(self, *args):
_interval = args[0]
name = args[1]
if self.counter == 0 and name == "Third Call":
reactor.stop()
elif self.counter == 0:
print name, " Finished..!"
else:
print self.counter, '...'
self.counter -= 1
reactor.callLater(_interval, self.count, *args)
from twisted.internet import reactor
reactor.callWhenRunning(Countdown().count, 1, "First Call")
reactor.callWhenRunning(Countdown().count, 2, "Second Call")
reactor.callWhenRunning(Countdown().count, 3, "Third Call")
print 'Start!'
reactor.run()
print 'Stop!'
现在我使用 if self.counter == 0 和 name == "Third Call": 来防止我的所有计数器进程完成。所以现在我需要知道,twisted 中是否有任何内置方法可以知道所有呼叫已完成或我的所有计数器呼叫已完成。