Asyncio 是 Python 的一个库,用于编写单线程的并发代码。它使用协程(coroutines)来实现异步编程,使得开发者可以编写高效的并发代码,而无需多线程或多进程。
特点
- 协程(Coroutines): 异步编程的核心,允许函数暂停执行,并在需要时恢复。
- 事件循环(Event Loop): 管理并发任务,包括协程、IO 操作等。
- 任务(Tasks): 异步执行的单元,可以由协程创建。
- Future 对象: 表示异步操作的结果。
示例
以下是一个简单的异步 HTTP 请求示例:
import asyncio
import aiohttp
async def fetch(session, url):
async with session.get(url) as response:
return await response.text()
async def main():
async with aiohttp.ClientSession() as session:
html = await fetch(session, 'https://www.example.com')
print(html)
# 运行主函数
asyncio.run(main())
扩展阅读
想要了解更多关于 asyncio 的内容,可以阅读官方文档:Python asyncio 文档
Python asyncio