我正在尝试以下代码:
import asyncio
@asyncio.coroutine
def func_normal():
print("A")
yield from asyncio.sleep(5)
print("B")
return 'saad'
@asyncio.coroutine
def func_infinite():
i = 0
while i<10:
print("--"+str(i))
i = i+1
return('saad2')
loop = asyncio.get_event_loop()
tasks = [
asyncio.async(func_normal()),
asyncio.async(func_infinite())]
loop.run_until_complete(asyncio.wait(tasks))
loop.close()
我不知道如何从这些函数中获取变量值。我不能这样做:
asyncio.async(a = func_infinite())
因为这会使它成为关键字参数。我该怎么做才能做到这一点?
原文由 Saad Aleem 发布,翻译遵循 CC BY-SA 4.0 许可协议
协程按原样工作。只需使用
loop.run_until_complete()
的返回值并 调用asyncio.gather()
来收集多个结果:输出