文章目录
一、使用 Flow 异步流持续获取不同返回值
二、Flow 异步流获取返回值方式与其它方式对比
三、在 Android 中 使用 Flow 异步流下载文件
一、使用 Flow 异步流持续获取不同返回值...----
在上一篇博客 【Kotlin 协程】Flow 异步流 ① ( 以异步返回返回多个返回值 | 同步调用返回多个值的弊端 | 尝试在 sequence 中调用挂起函数返回多个返回值 | 协程中调用挂起函数返回集合...) 中 分析了 以异步方式 分别使用 序列 和 集合 返回多个返回值 ,
序列可以先后返回多个返回值 , 但是会阻塞线程 ;
集合可以一次性返回多个返回值 , 无法持续返回返回值 ;
本篇博客中开始引入...;
三、在 Android 中 使用 Flow 异步流下载文件
----
Android 中主线程不可执行网络相关操作 , 因此只能在 子线程 中下载文件 ,
可以在协程中使用 Dispatcher.IO...调度器在子线程下载文件 ,
下载文件时需要实时显示下载百分比进度 ,
这个进度需要上报给主线程 , 在主线程中更新 UI 显示下载进度 ,
在 Flow 异步流中 , 可以 使用 FlowCollector