2016-11-24 65 views

回答

1

您可以直接更改callback_time,甚至不需要停止PeriodicCallback实例。这削减似乎适用于我:

import tornado 
from tornado.ioloop import PeriodicCallback 

pc = None 
counter = 0 


def get_periodic_callback(): 
    global pc 
    if pc is None: 
     pc = PeriodicCallback(callback, 1000) 
    return pc 


def callback(): 
    global counter 
    if counter < 5: 
     counter += 1 
     print("foo") 
    else: 
     pc = get_periodic_callback() 
     pc.callback_time = 100 
     print("bar") 


pc = get_periodic_callback() 
pc.start() 
tornado.ioloop.IOLoop.instance().start()