本篇解析 example-flow-26.kt。学习如何处理 Flow 收集过程中的异常。
1. 核心概念:try-catch 块
Flow 的收集过程(collect)本质上是在协程中运行的。因此,你可以像处理普通挂起函数一样,使用传统的 try-catch 来包裹 collect。
2. 代码解析
1 | try { |
3. 开发者感悟
这种捕获方式是最直观的。它不仅能捕获发射端(emit)抛出的异常,也能捕获收集端(collect 逻辑块)抛出的异常。在简单的业务场景下,这是最可靠的选择。