![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
kotlin协程
文章平均质量分 87
pumpkin的玄学
路漫漫其修远兮,吾将上下而求索。
展开
-
Kotlin:深度理解协程挂起恢复实现原理。纯源码分析。
- 协程是依靠什么实现的呢?- 如何挂起?- 如何恢复?原创 2021-12-05 15:40:50 · 1369 阅读 · 3 评论 -
Kotlin:深入理解StateFlow与SharedFlow,StateFlow和LiveData使用差异区分,SharedFlow实现源码解析。
本文接上一篇博文:Kotlin:Flow 全面详细指南,附带源码解析。文章目录StateFlow、SharedFlowStateFlow使用StateFlow简介StateFlow的用法LiveData与StateFlow差异对比StateFlow特别说明Android中使用StateFlow实践SharedFlow使用SharedFlow简介SharedFlow的使用SharedFlow使用实战????♀️SharedFlow、StateFlow的使用区别,换句话说,事件和状态的区别?StateFlo原创 2021-11-28 18:09:22 · 6557 阅读 · 10 评论 -
Kotlin:Flow 全面详细指南,附带源码解析。
Flow来了来了它终于来了,这篇本应在好几个个月前就需要发布的文章????。一拖再拖????,毕竟对于flow还是的有敬畏之心的,不好好研究一下真心不敢乱写,有什么问题,欢迎指出,欢迎私信技术交流????。那么现在就正式进入Flow的世界吧!Flow简介Flow是什么❓A suspending function asynchronously returns a single value, but how can we return multiple asynchronously computed原创 2021-11-14 19:58:24 · 7406 阅读 · 7 评论 -
Flow : callbackFlow使用心得,避免踩坑!
文章目录简述使用总结简述原因这几天需要搭建一个新的架构,整体使用MVVM,网络这一块选择使用okhttp+retrofit+flow来进行搭建。直接创建出来的Flow并不是线程安全的且使用起来也不是很方便,所以使用官方提供的创建Flow的APIcallbackFlow来进行创建。这里记录一下callbackFlow使用的心得,踩过的坑就不希望大家在踩一遍了,另外整个架构搭建完成也会开源出来,感兴趣小伙伴的可以关注一波哈。也欢迎找我讨论技术呀!原理简述callbackFlow:底层使用channe原创 2021-10-18 13:49:13 · 8004 阅读 · 2 评论 -
Kotlin:lifecycleScope与GlobalScope以及MainScope的区别,详细分析为什么在Android中推荐使用lifecycleScope!
目录简要GlobalScopeMainScope()lifecycleScopelifecycleScope剩余问题分析(感兴趣的可以继续看)简要首先简要介绍一下kotlin协程作用域的三种类型。类型产生方式异常传播特征顶级作用域GlobalScope创建异常不向外传播。异常到达顶级作用域后,如果还没有被处理,会抛给当前的exceptionHandler,如果没有则给当前线程的uncaughtExceptionHandler协同作用域Job嵌套、coroutineSc原创 2021-08-29 19:10:21 · 13032 阅读 · 2 评论 -
kotlin标准库与kotlin协程相关支持库对应关系(持续更新。。。)
文章目录Android工程引入kotlin协程库kotlin标准库以及协程库对应关系列表Android工程引入kotlin协程库 想要在Android工程中使用协程,需要引入kotlin标准协程库以及kotlin-android协程支持库。比如:当前使用的kotlin标准库是1.4.0。在工程引入了以下版本的协程库: //kotlin协程标准库 project.ext.kotlin_coroutines_version = "1.3.9" implementation "org原创 2021-08-29 14:45:44 · 4485 阅读 · 1 评论 -
Android:老版本Retrofit实现对kotlin协程的支持,封装简单的并发请求
Retrofit2.6开始增加了对Kotlin协程的支持,可以通过suspend函数进行异步调用。但是有很多项目使用的Reftrofit版本较老,那怎么实现对kotlin协程的支持呢?下面提供一下实现方案。首先创建通用的Retrofit api。data class User(val id: String, val name: String, val url: String)val gitApi by lazy { val retrofit = Retrofit.Builder()原创 2021-08-28 20:07:38 · 536 阅读 · 0 评论