如何停止龙卷风生成的任务



我正在使用Python的Tornado框架编写WebSocket服务器。

class MyHandler(WebSocketHandler):
def open(self, device: str):
async def aTask():
while True:
# do something again and again until the connection closes
IOLoop.current().spawn_task(aTask)
def on_close(self):
# want to stop/destroy aTask
def on_message(self, message):
print(message)

如何停止和销毁连接打开时生成的后台任务?

为当前实例设置一个可以在while循环中检查的属性。当连接关闭时,将属性设置为False:

def open(self, device):
setattr(self, 'is_open', True)
while self.is_open:
# ...
def on_close(self):
setattr(self, 'is_open', False)

相关内容

  • 没有找到相关文章

最新更新