使用 gen.task 和 Tornado 来实现一个简单的功能 [英] using gen.task with Tornado for a simple function
本文介绍了使用 gen.task 和 Tornado 来实现一个简单的功能的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
只是尝试使用 Tornado 的异步函数 - 我想从我的处理程序中调用一个方法,但它一直告诉我它有一个意外的关键字参数‘回调’".
Just trying to use the async functions of Tornado - I want to invoke a method from my handler but it keeps telling me that it "got an unexpected keyword argument 'callback'".
class MyHandler(tornado.web.RequestHandler):
@asynchronous
@gen.engine
def get(self):
response = yield gen.Task(self.dosomething, 'argument')
self.write(response)
self.finish()
def dosomething(self, myargument):
pass
推荐答案
非阻塞函数需要回调,在那里传递结果.
Non-blocking function requires callback, where it pass result.
class MyHandler(tornado.web.RequestHandler):
@asynchronous
@gen.engine
def get(self):
response = yield gen.Task(self.dosomething, 'argument')
self.write(response)
self.finish()
def dosomething(self, myargument, callback):
return callback(myargument)
这篇关于使用 gen.task 和 Tornado 来实现一个简单的功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文