所以我用
ioloop.IOLoop.instance().add_timeout(time, callback_func)
但是我的callback_func
可能会抛出我想要捕捉的Exception
。在
尝试了this answer中建议的方法,但似乎不起作用。或者我做得不对。任何帮助都会很好。在
代码如下:
开始.py
class Start:
# ... other methods ...
@staticmethod
def initialize():
OtherClass.initialize()
def main():
Start.initialize()
if __name__ == "__main__":
main()
ioloop.IOLoop.instance().start()
其他_类.py
^{pr2}$
如果
callback_func
是您自己的代码,那么到目前为止,捕获所有异常的最简单方法是将整个函数体包装在try/except中:它很简单,每个读过你的代码的人都会理解它,这并不奇怪。在
如果您想做一些异国情调和龙卷风特有的事情,请使用ExceptionStackContext:
^{pr2}$最重要的是,使用协同程序而不是回调。协同程序与回调一样有效,但是提供了常规的Python异常处理语义。请参阅我的文章Refactoring Tornado Coroutines和Tornado guide。在
相关问题 更多 >
编程相关推荐