Python 的 asyncio 库是一个用于编写单线程并发代码的库,使用事件循环来处理并发。这使得它在处理 I/O 密集型任务时特别有用。
特点
- 异步编程:通过协程(coroutines)实现,使得代码可以同时进行多个操作。
- 事件循环:管理所有事件,包括 I/O 事件、定时器等。
- 高并发:通过非阻塞的方式提高应用程序的并发性能。
示例
以下是一个简单的 asyncio 示例,展示如何使用协程来发送 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)
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
更多关于 asyncio 的使用,可以参考Python asyncio 官方文档。