如何在龙卷风中一次启动多个任务
How start multiple tasks at once in tornado
我有一个 for .. in .. :
循环,它正在调用一个方法并等待结果。我怎样才能让这个循环一次开始,然后等待结果?
这是我的代码:
@gen.coroutine
def update_all( self ):
for service in self.port_list:
response = yield self.update_service( str( service.get( 'port' ) ) )
self.response_list.append( response )
self.response = json.dumps( self.response_list )
return self.response
谢谢!
构建一个列表(由 update_service()
返回的 Future
个对象),然后 yield
列表:
@gen.coroutine
def update_all( self ):
futures = []
for service in self.port_list:
futures.append(self.update_service(str(service.get('port'))))
self.response_list = yield futures
self.response = json.dumps( self.response_list )
return self.response
我有一个 for .. in .. :
循环,它正在调用一个方法并等待结果。我怎样才能让这个循环一次开始,然后等待结果?
这是我的代码:
@gen.coroutine
def update_all( self ):
for service in self.port_list:
response = yield self.update_service( str( service.get( 'port' ) ) )
self.response_list.append( response )
self.response = json.dumps( self.response_list )
return self.response
谢谢!
构建一个列表(由 update_service()
返回的 Future
个对象),然后 yield
列表:
@gen.coroutine
def update_all( self ):
futures = []
for service in self.port_list:
futures.append(self.update_service(str(service.get('port'))))
self.response_list = yield futures
self.response = json.dumps( self.response_list )
return self.response