Pyzmq龙卷风Ioloop:如何优雅地处理键盘



我可以在我的pyzmq eventloop中捕获键盘线:

try:
    ioloop.IOLoop.instance().start()
except KeyboardInterrupt:
    pass

但这只是突然停止了iOloop。我想在清理后手动检测键盘,并手动关闭IOLOOP。我该怎么做?

使用signal模块处理SIGINT

import signal
from tornado.ioloop import IOLoop
def on_shutdown():
    print('Shutting down')
    IOLoop.instance().stop()
if __name__ == '__main__':
    ioloop = IOLoop.instance()
    signal.signal(signal.SIGINT, lambda sig, frame: ioloop.add_callback_from_signal(on_shutdown))
    ioloop.start()

相关内容

  • 没有找到相关文章

最新更新