- 链接地址:https://kmyhy.blog.csdn.net/article/details/125148144
- 链接标题:【深入kotlin】 - Flow 进阶_kotlin flow取消-CSDN博客
- 所属网站:kmyhy.blog.csdn.net
- 被收藏次数:3250
文章浏览阅读1.1k次。Flow 的收集动作总是发生在调用协程的上下文当中,而非定义 Flow 的上下文。运行输出结果如下(打开 debug 参数):可以看出 flow 运行于 collect 调用时的协程,即 runBlocking 开启的协程。这无疑会阻塞住主线程。因此我们可以将 flow 运行在其它上下文:程序报出如下异常:大意是收集线程发生在主线程,但 emit 线程发生在后台线程。withContext(Dispatchers.Default) 一句修改了 flow 的上下文,将 flow 的分发器修改到了 D_kotlin flow取消
版权声明:本文发布于特牛网址导航 内容均来源于互联网 如有侵权联系删除