SuperAPI AI 工具集

coroutines-patterns

通用与其它

查看项目

更新于 10-15 19:52

技能介绍

用途:整理 Kotlin Coroutines 与 Flow 的模式,用于结构化并发、错误处理与异步操作,常见于 Android/移动开发中的异步与状态管理。

主要能力:

  1. 协程作用域:推荐 viewModelScope 与 lifecycleScope,随生命周期自动取消;避免 GlobalScope,防止无法取消与内存泄漏。
  2. 调度器:Dispatchers.Main 用于 UI,Dispatchers.IO 用于网络与磁盘,Dispatchers.Default 用于 CPU 密集计算,配合 withContext 切换。
  3. Flow 模式:StateFlow 承载 UI 状态(MutableStateFlow + asStateFlow),SharedFlow 承载事件(MutableSharedFlow + asSharedFlow);Compose 中用 collectAsStateWithLifecycle 按生命周期收集。
  4. Flow 操作符:filter、map、distinctUntilChanged、debounce、catch、collect 等链式组合,可用于过滤、转换、去重、防抖与回退。
  5. 错误处理:协程内 try-catch 更新状态;supervisorScope 使子协程失败互不影响。
  6. 取消:协作式取消,循环中用 ensureActive 检查;CancellationException 应重新抛出而非吞掉。

使用方式:按上述模式在 ViewModel 与 Activity/Composable 中组织协程与 Flow,注意作用域、调度器与取消传播。

适用场景:需要生命周期感知、可取消、易调试的 Kotlin 异步任务,如网络请求、数据库查询、UI 状态与事件分发。

限制:资料未提供具体依赖版本、安装命令、收费信息、平台范围与性能数据,暂未提供。