Python 的 asyncio
是一个用于编写并发代码的库,它使用 async/await
语法。这使得编写异步代码变得简单且易于理解。
基本概念
- 协程(Coroutine): 协程是轻量级的线程,可以并发执行。
- 事件循环(Event Loop): 事件循环是
asyncio
的核心,它负责调度协程,处理IO事件等。 - 任务(Task): 任务是协程的实例,它被事件循环调度。
使用示例
以下是一个简单的异步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, 'http://example.com')
print(html)
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
扩展阅读
更多关于 asyncio
的内容,您可以访问Python asyncio 文档。