用途:该技能面向 Python asyncio 并发编程,帮助构建 I/O 密集型、高并发异步应用,如 Web 服务器、API 客户端、WebSocket 应用、实时系统、后台任务处理器、异步数据库操作与连接池、聊天与通知系统、微服务异步通信等。
主要能力:讲解 asyncio 核心概念,包括事件循环、协程(async def)、任务、Future、同步原语(Lock、Semaphore、Event)与异步上下文管理器;给出多种并发模式:asyncio.gather 并发执行并保持结果顺序、asyncio.wait 的 FIRST_COMPLETED/FIRST_EXCEPTION/ALL_COMPLETED 等待策略、Semaphore 限制并发数、Lock 互斥、Event 信号协调、Queue 生产者/消费者模型。还涵盖任务创建与命名、任务取消与清理、异常处理(return_exceptions、task.exception)、事件循环管理(asyncio.run、new_event_loop、run_until_complete)、用 run_in_executor 与 ThreadPoolExecutor 运行阻塞代码、loop 回调(call_soon、call_later、call_at)、异步上下文管理器(类实现与 asynccontextmanager 装饰器)以及性能优化(计时、顺序与并发对比、受控并发)。
使用方式:以 Python 内置 asyncio 与 async/await 语法编写;示例使用 asyncio.run(main()) 启动,网络请求示例依赖 aiohttp 的 ClientSession 作为异步上下文管理器。资料未提供安装命令或具体版本要求。
适用场景:需要同时处理大量 I/O 操作、并行 HTTP 请求、限流 API 调用、控制数据库连接使用、避免资源耗尽、协调多协程与后台任务等。
限制:资料未说明该技能的安装方式、运行环境、收费或效果数据;示例中的 URL、超时与并发数仅为演示,实际使用需按环境调整。避免在事件循环中调用阻塞函数,应改用执行器。