
Kotlin协程完全解析
Kotlin中文社区
Kotlin 中文社区官方账号
展开
-
破解 Kotlin 协程 - 入门篇
假定你对协程(Coroutine)一点儿都不了解。 通过阅读本文看看是否能让你明白协程是怎么一回事。1. 引子我之前写过一些协程的文章,很久以前了。那会儿还是很痛苦的,毕竟 kotlinx.coroutines 这样强大的框架还在襁褓当中,于是乎我写的几篇协程的文章几乎就是在告诉大家如何写这样一个框架——那种感觉简直糟糕透了,因为没有几个人会有这样的需求。这次准备从协程用户(也...原创 2019-04-01 22:44:41 · 2164 阅读 · 5 评论 -
破解 Kotlin 协程(2) - 协程启动篇
破解 Kotlin 协程 - 入门篇现在你已经知道协程大概是怎么回事了,也应该想要自己尝试一把了吧。本文将为大家详细介绍协程的几种启动模式之间的不同,当然,我不打算现在就开始深入源码剖析原理,大家只需要记住这些规则就能很好的使用协程了。1. 回想一下刚学 Thread 的时候我相信现在接触 Kotlin 的开发者绝大多数都有 Java 基础,我们刚开始学习 Thread 的时候,一...原创 2019-04-08 07:30:00 · 2240 阅读 · 2 评论 -
破解 Kotlin 协程(3) - 协程调度篇
破解 Kotlin 协程(3) - 协程调度篇关键词:Kotlin 异步编程 协程上一篇我们知道了协程启动的几种模式,也通过示例认识了 launch 启动协程的使用方法,本文将延续这些内容从调度的角度来进一步为大家揭示协程的奥义。1. 协程上下文调度器本质上就是一个协程上下文的实现,我们先来介绍下上下文。前面我们提到 launch 函数有三个参数,第一个参数叫 上下文,它的接口类型...原创 2019-06-13 09:22:28 · 1904 阅读 · 2 评论 -
破解 Kotlin 协程(4) - 异常处理篇
关键词:Kotlin 协程 异常处理异步代码的异常处理通常都比较让人头疼,而协程则再一次展现了它的威力。1. 引子我们在前面一篇文章当中提到了这样一个例子: typealias Callback = (User) -> Unit fun getUser(callback: Callback){ ... } 我们通...原创 2019-04-23 12:53:14 · 6143 阅读 · 3 评论 -
破解 Kotlin 协程(5) - 协程取消篇
关键词:Kotlin 协程 协程取消 任务停止协程的任务的取消需要靠协程内部调用的协作支持,这就类似于我们线程中断以及对中断状态的响应一样。1. 线程的中断我们先从大家熟悉的话题讲起。线程有一个被废弃的 stop 方法,这个方法会让线程立即死掉,并且释放它持有的锁,这样会让它正在读写的存储处于一个不安全的状态,因此 stop 被废弃了。如果我们启动了一个线程并让它执行一些任务,但很...原创 2019-04-30 15:31:48 · 4729 阅读 · 1 评论 -
破解 Kotlin 协程(6) - 协程挂起篇
关键词:Kotlin 协程 协程挂起 任务挂起 suspend 非阻塞协程的挂起最初是一个很神秘的东西,因为我们总是用线程的概念去思考,所以我们只能想到阻塞。不阻塞的挂起到底是怎么回事呢?说出来你也许会笑~~(哭?。。抱歉这篇文章我实在是没办法写的更通俗易懂了,大家一定要亲手实践!)1. 先看看 delay我们刚刚学线程的时候,最常见的模拟各种延时用的就是 Thread.sleep...原创 2019-05-09 12:24:50 · 2183 阅读 · 0 评论 -
破解 Kotlin 协程(7) - 序列生成器篇
破解 Kotlin 协程(7) - 序列生成器篇关键词:Kotlin 协程 序列 Sequence说出来你可能不信,Kotlin 1.1 协程还在吃奶的时候,Sequence 就已经正式推出了,然而,Sequence 生成器的实现居然有协程的功劳。1. 认识 Sequence在 Kotlin 当中,Sequence 这个概念确切的说是“懒序列”,产生懒序列的方式可以有多种,下面我们介绍...原创 2019-06-11 11:34:46 · 1222 阅读 · 0 评论 -
破解 Kotlin 协程(8) - Android 篇
破解 Kotlin 协程(8) - Android 篇关键词:Kotlin 协程 Android AnkoAndroid 上面使用协程来替代回调或者 RxJava 实际上是一件非常轻松的事儿,我们甚至可以在更大的范围内结合 UI 的生命周期做控制协程的执行状态~本文涉及的 MainScope 以及 AutoDispose 源码:kotlin-coroutines-android1. 配...原创 2019-06-11 11:35:53 · 2939 阅读 · 0 评论