Kotlin
文章平均质量分 87
昨夜西风在吹
这个作者很懒,什么都没留下…
展开
-
Kotlin 协程完全解读五
上一篇文章介紹了协程的运行与恢复,本篇介绍父子协程什么是子协程我们这里举一个例子第一个launch 创建的协程代表的就死父协程,第二个launch创建的协程代表的就是子协程,注意第一个launch调用的是this对象方法。如上第二个launch调用的就是StandaloneCoroutine的launch方法,StandaloneCoroutine表示一个新建的协程,其本身也实现了CoroutineScope。子协程还可以有自己的子协程,最终形成了一个协程树。父子协程的关系1父子协程的执行原创 2021-07-05 17:42:53 · 294 阅读 · 0 评论 -
Kotlin 协程完全解读六
前面介绍了父子协程,本篇我们来介绍协程的取消与协程的结束取消协程 fun testCCancel() { var con= GlobalScope.launch { print("这是父协程") var child1=launch { print("这是子协程") } child1.cancel() var chi原创 2021-07-05 17:42:41 · 298 阅读 · 0 评论 -
Kotlin 协程完全解读七
前言要写的内容在前面的文章都写的差不多了,这个最后研究一下一个比较重要的方法suspendCoroutineUninterceptedOrReturn。suspendCoroutineUninterceptedOrReturn 因为其不凡的特性,使得它的地位极高,是一个很有存在感的函数。对于整个协程来说意义重大,花时间去了解它是非常值得的一件事情。那么关于协程我们需要学习的东西还有很多,希望我们能够一起学习一同进步!在协程提供的一些方法类似withContext ,delay ,join,suspe原创 2021-07-05 17:42:24 · 219 阅读 · 0 评论 -
Kotlin 协程完全解读四
文章目录前言一、源码1.1 从testCoroutine开始1.2 mainActivity.testSuspend(this)协程恢复协程返回值前言在上一篇文章里面我们介绍了协程的创建过程,本篇文章我们着重介绍协程的状态机以及协程在编译期间生成的类一、源码本文的例子 fun testCoroutine(){ GlobalScope.launch(Dispatchers.Default) { println("我是testCoroutine 之原创 2021-07-05 17:41:58 · 535 阅读 · 0 评论 -
Kotlin 协程完全解读三
前面两篇文章里面介绍了协程的一些原理与概念,所谓知其然更要知其所以然,本篇文章我们将正式从协程的创建开始研究协程的源码。,Kotlin 并没有给我暴露给用户可以直接创建协程的类,上一边文章中我们介绍过CoroutineScope 可以看成的协程建造者,是协程框架对外暴露的创建协程的接口。 fun testCoroutine(){ GlobalScope.launch { println("我是testCoroutine 之前") }原创 2021-07-05 17:41:29 · 688 阅读 · 0 评论 -
Kotlin 协程完全解读一
kotlin 协程一 使用Koltin有一段时间了,自然对于Kotlin大名鼎鼎的协程也是闻名已久,但是在使用的过程中一直是一知半解,对于很多的概念每一个 名词我都能看的懂,但是我就是不知道你到底在说些什么。迫不得已只好自己去阅读源码,在读源码 的过程中去理解与学习。由于协程的源码读起来比较费劲.特别是对于初学者更加晦涩。我尽量以比较通俗的方式去想大家介绍Kotlin的协程原理,逐步的带领大家领略协程的源码。本文不会对于协程的基本使用做过多介绍,所以在阅读本文之前,希望各位对于协程的基本使用做个..原创 2021-07-05 17:40:56 · 455 阅读 · 0 评论 -
Kotlin 协程完全解读二
我们上一篇文章解释了什么是协程并且稍微解释了一下协程原理,我们本篇文章就来给大家介绍一下Koltin协程里面的一些概念与类1 CoroutineScopeCoroutineScope 是一个接口,要是查看这个接口的源代码的话就发现这个接口里面只定义了一个属性CoroutineContext:CoroutineScope可以理解为协程的作用域,每个coroutine builder都是 CoroutineScope 的扩展函数,例如lanch,asyn扩展方法 。从这个角度看Corout...原创 2021-07-05 17:39:50 · 170 阅读 · 0 评论