用途:整理 Kotlin Coroutines 与 Flow 的模式,用于结构化并发、错误处理与异步操作,常见于 Android/移动开发中的异步与状态管理。
主要能力:
- 协程作用域:推荐 viewModelScope 与 lifecycleScope,随生命周期自动取消;避免 GlobalScope,防止无法取消与内存泄漏。
- 调度器:Dispatchers.Main 用于 UI,Dispatchers.IO 用于网络与磁盘,Dispatchers.Default 用于 CPU 密集计算,配合 withContext 切换。
- Flow 模式:StateFlow 承载 UI 状态(MutableStateFlow + asStateFlow),SharedFlow 承载事件(MutableSharedFlow + asSharedFlow);Compose 中用 collectAsStateWithLifecycle 按生命周期收集。
- Flow 操作符:filter、map、distinctUntilChanged、debounce、catch、collect 等链式组合,可用于过滤、转换、去重、防抖与回退。
- 错误处理:协程内 try-catch 更新状态;supervisorScope 使子协程失败互不影响。
- 取消:协作式取消,循环中用 ensureActive 检查;CancellationException 应重新抛出而非吞掉。
使用方式:按上述模式在 ViewModel 与 Activity/Composable 中组织协程与 Flow,注意作用域、调度器与取消传播。
适用场景:需要生命周期感知、可取消、易调试的 Kotlin 异步任务,如网络请求、数据库查询、UI 状态与事件分发。
限制:资料未提供具体依赖版本、安装命令、收费信息、平台范围与性能数据,暂未提供。