我是Python新手,我要解决的问题是要有一个持续的websocket连接,它可以接收请求,在进行calc时等待一段时间,准备好后返回结果,同时不阻止来自其他用户/客户机/连接的其他请求。我已经做到了这一点,它的工作相当不错,但想检查这是否是正确的解决方案。我的另一个关键动作是在一段时间内完成的。在import tornado.web
import tornado.websocket
import tornado.httpserver
import tornado.ioloop
import time
import json
from tornado import gen
from concurrent.futures import ThreadPoolExecutor
from tornado.options import define, options, parse_command_line
define("port", default=8888, type=int)
thread_pool = ThreadPoolExecutor(2)
class WebSocketHandler(tornado.websocket.WebSocketHandler):
# Make this an asynchronous coroutine
@gen.coroutine
def on_message_coroutine(self, message):
self.write_message('Message:', message)
def worker_A(websocket, x):
time.sleep(1)
print('TICK', x)
pass
return x
print('scheduling and yielding')
for x in ra