错误回调后重新启动LoopingCall任务

时间:2015-11-18 15:47:28

标签: python twisted twisted.internet

我的LoopingCall任务在执行errorcallback时停止,我想重新启动它。

我的代码看起来像这样,但我不确定我做得对,哪种方式最好

from twisted.internet.task import LoopingCall
from twisted.internet import reactor

PROCESS_INTERVAL = 1

def periodic_task():
    print notDefined

def periodic_task_crashed(error):
    print "periodic task crashed"

lc = LoopingCall(periodic_task)
d = lc.start(PROCESS_INTERVAL)
d.addErrback(periodic_task_crashed)

reactor.run()

然后现在在我的错误回调中我这样做......

def periodic_task_crashed(reason):
    d = lc.start(PROCESS_INTERVAL)
    d.addErrback(periodic_task_crashed)

这是正确的方法吗?它可以进入递归错误循环吗?

0 个答案:

没有答案