Kotlin教程

【九月打卡】第3天 一课掌握Kotlin 突破开发语言瓶颈

本文主要是介绍【九月打卡】第3天 一课掌握Kotlin 突破开发语言瓶颈,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

课程信息

课程名称: 一课掌握Kotlin 突破开发语言瓶颈
课程章节: 协程的基本概念(11-2)
课程讲师: bennyhuo

课程内容

协程是什么

  • 协程是可以由程序自行控制挂起、恢复的程序
  • 协程可以用来实现多任务的协作执行
  • 协程可以用来解决异步任务控制流的灵活转移

协程的作用

  • 协程可以让异步代码同步化
  • 协程可以降低异步程序的设计复杂度

协程的异步机制

图片描述
黄色为主调用流程,当主流程走到绿色代码时,绿色代码为异步执行流程,协程会切到线程3执行异步代码,当线程3的代码执行完,再切回来执行主流程的代码。
从异步代码切回来不一定就能切回到原来的线程1去执行,可能会跑到其他线程上继续执行,如果要实现切回到线程1的效果,需要依赖调度器。
图片描述

线程 vs 协程

线程Thread,指操作系统的线程,也成为内核线程
协程Coroutine,指语言实现的协程,运行在内核线程之上

Kotlin协程

Kotlin对协程的支持分两个级别,分别是语言级别的支持框架级别的支持

语言级别的支持

  • Kotlin标准库
  • 协程上下文
  • 拦截器
  • 挂起函数

框架级别的支持

  • 官方协程框架
  • Job
  • 调度器
  • 作用域

学习总结

通过本章节的学习,了解到了协程的基本概念,异步机制,和它能给我们编程带来什么好处。
引用Beny老师课堂上的两句话:
协程并不能让我们的代码异步,但是它能令我们的异步代码更简单。
协程并没有什么黑魔法,它的黑魔法主要在于控制我们代码的流程。

这篇关于【九月打卡】第3天 一课掌握Kotlin 突破开发语言瓶颈的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!