简单的功能和龙卷风gen.engine

时间:2013-08-29 10:06:07

标签: python tornado

我正在使用Python + Tornado创建一个Web应用程序。写了一个简单的处理程序,例如:

class AdminHandler(BaseHandler):

@tornado.web.authenticated
@tornado.web.asynchronous
@gen.engine
def get(self):
    response = yield gen.Task(self.acync_func_test, 'my')
    print response
    self.render('admin/index.html')


def acync_func_test(self, argument, callback):
    for i in xrange(1,59999000):
        i**2+2-12
    callback(argument)

但是函数不是异步执行的。其他客户端正在等待第一个查询执行。如何进行非阻塞执行?

更新

在async_func_test()函数中添加了装饰符'@ gen.engine',但仍被阻止((

1 个答案:

答案 0 :(得分:0)

将装饰器'@ gen.engine'添加到async_func_test()函数