SuperAPI AI 工具集

concurrency-patterns

通用与其它

查看项目

更新于 10-15 23:44

技能介绍

用途:为 Swift 并发模式选择提供判断框架,而非语法教学。适合在编写异步代码、审查并发设计或排查数据竞争时参考。

主要能力:给出决策树,包括 async let 与 TaskGroup 的选择(编译期已知的 2-5 个固定操作用 async let,动态数量用 TaskGroup)、Task 与 Task.detached 的选择(是否继承优先级、actor 与 task-local)、actor 与加锁类的取舍、Sendable 一致性判断,以及 @MainActor 放置策略。同时列出常见错误:未 await 的 async let 会被静默取消、Task.cancel() 是协作式取消、actor 重入导致状态在挂起点后变化、把 actor 内部引用类型状态暴露出去、nonisolated 访问可变状态造成数据竞争、continuation 多次 resume 或漏 resume 导致崩溃或挂起。

使用方式:作为技能加载后,按决策树判断当前场景应采用的模式,并对照“NEVER Do”与红旗清单检查代码。示例代码保留原样,如 async let user = fetchUser()、withThrowingTaskGroup、Task.checkCancellation()、withCheckedThrowingContinuation 等。

适用场景:Swift 并发代码设计、代码审查、性能与安全权衡、迁移到结构化并发。

限制:资料未提供安装命令、收费方式、平台支持范围与版本要求,暂未提供。内容为经验性判断,具体行为以 Swift 官方文档与编译器版本为准。