协程有两个概念,一个是协程作用域,第二个是协程,虚拟机首先会加载协程作用域包括子作用域,因此在各个作用域没有delay的情况下,从上到下执行作用域中的代码,执行完毕后再按照从上到下的顺序执行协程中的代码

fun main1() = runBlocking {var order = 1// this: CoroutineScopefor (i: Int in 1..300)println("first$i:::${order++}")launch {//        delay(200L)
//        println("Task from runBlocking")delay(2000)for (i: Int in 1..300)println("fourth$i:::${order++}")}for (i: Int in 1..300)println("second$i:::${order++}")coroutineScope {// 创建⼀个新的协程作⽤域launch {for (i: Int in 1..300)println("fifth$i:::${order++}")
//            delay(500L)
//            println("Task from nested launch")
//            delay(100L)
//            println("Task from coroutine scope") // 该⾏将在嵌套启动之前执⾏打印}for (i: Int in 1..300)println("third$i:::${order++}")
//        println("Coroutine scope is over") // 该⾏将在嵌套结束之后才会被打}for (i: Int in 1..300)println("sixth$i:::${order++}")
}

协程作用域和协程中的代码执行顺序

first second third fourth fifth sixth

kotlin-协程-lzf相关推荐

  1. Kotlin 协程:简单理解 runBlocking, launch ,withContext ,async,doAsync

    前言 Kotlin的协程,本质上是一个线程框架,它可以方便的切换线程的上下文(如主线程切换到子线程/子线程切回主线程).而平时我们要想在Android Studio使用协程,先要在gradle引入协程 ...

  2. 在 Android 开发中使用 Kotlin 协程 (一) -- 初识 Kotlin 协程

    前言 最近在研究 Kotlin 协程,发现功能真的超级强大,很有用,而且很好学,如果你正在或计划使用 Kotlin 开发 Android,那么 Kotlin 协程你一定不能错过! 协程是什么? 我们平 ...

  3. 分析Kotlin协程只挂起不恢复会怎样(是否存在协程泄漏),以及挂起的协程存在哪里?

    前言 刚开始正式学协程原理的时候(以前只是学api怎么用),大概是20年6月,也就是bennyhuo大佬出书<深入理解Kotlin协程>的时候,我买了本然后细细研究,我的内心就一直有一个问 ...

  4. 动手实现Kotlin协程同步切换线程,以及Kotlin协程是如何实现线程切换的

    前言 突发奇想想搞一个同步切换线程的Kotlin协程,而不用各种withContext(){},可以减少嵌套且逻辑更清晰,想实现的结果如下图: 分析 实现我们想要的结果,首先需要知道协程为什么可以控制 ...

  5. Kotlin 协程 + Spring webflux 开发后端

    前言 后端响应式是未来,吞吐量会更大,而资源占用更少,其用到了类似Android系统的Loop(事件循环)机制,而协程可以减少线程等待的消耗,并且同步式的编程方式使代码可读性更高,两个仿佛天生就是一对 ...

  6. Android Kotlin协程和Retrofit结合使用

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/118085035 本文出自[赵彦军的博客] 往期精彩文章: Kotlin实战指南二十 ...

  7. pdf 深入理解kotlin协程_Kotlin协程实现原理:挂起与恢复

    今天我们来聊聊Kotlin的协程Coroutine. 如果你还没有接触过协程,推荐你先阅读这篇入门级文章What? 你还不知道Kotlin Coroutine? 如果你已经接触过协程,但对协程的原理存 ...

  8. android 协程,Android 上的 Kotlin 协程

    协程是一种并发设计模式,您可以在 Android 平台上使用它来简化异步执行的代码.协程是在版本 1.3 中添加到 Kotlin 的,它基于来自其他语言的既定概念. 在 Android 上,协程有助于 ...

  9. pdf 深入理解kotlin协程_协程初探

    Hello,各位朋友,小笨鸟我回来了! 近期学习了Kotlin协程相关的知识,感觉这块技术在项目中的可应用性很大,对项目的开发效率和维护成本有较大的提升.于是就考虑深入研究下相关概念和使用方式,并引入 ...

  10. kotlin协程_Kotlin协程

    kotlin协程 In this tutorial, we'll be looking into Kotlin Coroutines. Coroutines is a vital concept si ...

最新文章

  1. SQL 中循环、for循环、游标
  2. 元气森林网络推广外包来势汹汹,地毯式营销旨在打造国民品牌
  3. python语言必背代码-好用到哭!请记住这20段Python代码
  4. Anaconda+vscode+pytorch环境搭建
  5. 华为python有必要学吗_【华为云技术分享】这个 Python 库有必要好好学学
  6. 【Java】Eclipse输入命令行参数的方法
  7. OGG迁移大库注意要点之impdp导入产生大量归档
  8. 【华为云技术分享】敏捷DevOps知识卡大全(内附下载资料)
  9. 记录一次因为懒惰而吃亏的事情
  10. java24小时运行一次_使用crontab每分钟执行一次脚本,每24小时执行一次脚本[关闭]...
  11. 怎样学好计算机——计算机达人成长之路(23)
  12. php中mbsubstr汉字,php中文字符串截取(mb_substr)实例
  13. Linux VS code安装Monaco字体
  14. 21世纪十大营销法则
  15. 圣剑传说 玛娜传奇(Legend of Mana)(LOM)主原料取得方法
  16. C#实现超市管理系统(进销存--(包含部分用户权限的管理))
  17. 《小孩-大冰》阅读笔记
  18. kettle怎么复制资源库的job_kettle插件更新:定时执行资源库及文件的ktr和kjb作业...
  19. 基于OpenHarmony的智慧牧场
  20. 挖地兔股票数据接口 tushare 初接触

热门文章

  1. c++:dll缺少依赖文件的解决方法
  2. mysql 、pg 查询日期处理
  3. 记录一些工作用的软件
  4. oracle 错误代码
  5. 查看 Windows 10 快捷键 占用 VSCode 多行编辑 ctrl alt uparrow
  6. 超详细双系统安装指南
  7. GlusterFs安装部署文档
  8. Eureka常见问题解答
  9. 长尾理论读书笔记:第一章 长尾市场
  10. intel 服务器最新cpu,英特尔发布至强 Xeon W-3300 系列服务器处理器:最高 38 核