私はツイストとパイソンが初めてで、ツイストパイソンを読んでいます。
通話の登録
reactor.callLater(_interval, self.count, *args)
Countdown クラスを作成しました。これには count 関数が含まれています。3 回呼び出しています。
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 and name == "Third Call": を使用して、すべてのカウンタープロセスが終了するのを防ぎます。だから今私が知る必要があるのは、すべての呼び出しが終了したか、すべてのカウンター呼び出しが終了したかを知るためのメソッドが組み込まれているツイストがあるかどうかです。