协程的简单使用
协程是子例程的更一般形式。子例程可以在某一点进入并在另一点退出。协程则可以在许多不同的点上进入、退出和恢复。
协程可通过async def
语句来实现。通过async/await
语法来声明协程是编写异步应用的推荐方式。
https://docs.python.org/zh-cn/3/library/asyncio-task.html
1. 代码示例
python
import asyncio
async def test(_id):
print(f'当前{_id}')
await asyncio.sleep(1)
async def main():
aws = [] # 存储可等待对象
for _id in range(10):
aws.append(test(_id))
await asyncio.gather(*aws) # 并发运行
asyncio.run(main()) # 运行 asyncio 程序
运行结果可发现总体仅耗时1秒,而不是10秒