我是龙卷风的初学者,在了解龙卷风方面遇到一些困难,尤其是未来'。我的实际计划是返回状态'待定'当python文件在后台执行时,用户不会阻塞(异步)。我用了'Subprocess'运行python脚本。 python文件是转换文件格式。转换后,程序必须将状态更新为“已完成”状态。在MongoDB中。然后,将该状态返回给用户。以下是我的龙卷风处理程序。
class FileAsyncHandler(tornado.web.RequestHandler):
@gen.coroutine
def get(self):
res = yield self._work()
self.write(res)
client = MongoClient("mongodb://localhost:27017")
db=client.business
documents = db.reviews.find({'cuisine':'Fast Food'}).sort('name')
for document in documents:
pprint(document)
print(" <<<<<<<<< Fetched " + str(db.reviews.find({'cuisine':'Fast Food'}).count()) + " >>>>>>>>>>")
print(" <<<<<<<<< File Executing >>>>>>>>>>")
@gen.coroutine
def _work(self):
cmd = ['python3', '/home/Austin/Desktop/PythonCodes/magician.py']
p = Subprocess(cmd)
f = Future()
p.set_exit_callback(f.set_result)
return ("Pending")