用途:该技能面向 Python(asyncio)与 Rust(Tokio)的异步并发编程,目标是编写无竞态条件、资源管理正确、错误处理得当的并发代码。风险等级标注为 MEDIUM,理由是异步代码可能引发数据损坏、死锁以及双重支付、TOCTOU 等安全敏感竞态。
主要能力:识别与防范竞态条件;异步资源管理(连接、锁、文件);并发上下文中的错误处理;异步性能优化;优雅关闭与取消。核心原则包括 TDD 优先(用 pytest-asyncio 先写异步测试)、识别跨 await 点的共享状态、用锁或原子操作保护共享状态、确保取消时仍能清理资源、避免死锁(一致加锁顺序与超时)。
使用方式:按 TDD 工作流先写失败测试,再实现最小通过代码,随后按模式重构并运行验证,命令为 pytest tests/ -v --asyncio-mode=auto,可用 pytest tests/ -v -n auto --asyncio-mode=auto 做并发压力测试。性能模式包括用 asyncio.gather 并发执行、用 Semaphore 限制并发、用 TaskGroup(Python 3.11+)自动清理、复用事件循环、用 run_in_executor 处理 CPU 密集任务。实现模式涵盖锁保护共享状态、数据库原子操作(with_for_update)、异步上下文管理器、优雅关闭。
适用场景:需要并发 I/O、连接池、后台任务、限流与取消处理的异步服务。
限制:资料未提供具体安装步骤、收费方式与平台支持范围;版本建议为 Python 3.11+、Rust 1.75+、Tokio 1.35+,并建议用 redis-py 替代 aioredis。