python协程asyncio 多任务
时间: 2024-01-12 13:22:32 浏览: 136
Python的asyncio库提供了一种方便的方式来实现协程和多任务处理。通过使用async/await语法,我们可以创建异步的协程函数,并使用事件循环来调度这些协程的执行。
下面是一个简单的示例,演示了如何使用asyncio实现多任务处理:
```python
import asyncio
async def task1():
print("Task 1 started")
await asyncio.sleep(2)
print("Task 1 completed")
async def task2():
print("Task 2 started")
await asyncio.sleep(3)
print("Task 2 completed")
async def main():
# 创建一个事件循环
loop = asyncio.get_event_loop()
# 创建任务列表
tasks = [task1(), task2()]
# 并发执行任务
await asyncio.gather(*tasks)
# 关闭事件循环
loop.close()
# 运行主函数
asyncio.run(main())
```
在上面的示例中,我们定义了两个异步的协程函数`task1`和`task2`,它们分别模拟了两个耗时的任务。然后,我们在`main`函数中创建了一个事件循环,并使用`asyncio.gather`函数并发执行这两个任务。最后,我们使用`asyncio.run`函数来运行主函数。
通过使用asyncio库,我们可以轻松地实现协程和多任务处理,提高程序的并发性能。
阅读全文
相关推荐


















