Kotlin 协程与Flow

Flow的: https://juejin.cn/post/7126730252633505829

协程的: https://juejin.cn/post/6908271959381901325

什么是协程

协程可以理解成线程中的线程,进程跟线程的关系,差不多就是线程跟协程的关系。

一个进程里可以有多个线程,一个线程崩了整个进程不会崩;

一个线程里可以有多个协程,一个协程崩了整个线程不会崩;

当然,这只是简单的理解,系统的最小执行单位还是线程,协程的并行也只是线程的切换。

协程的好处

  • 轻量:可以在单个线程上运行多个协程,因为协程支持挂起,不会使正在运行协程的线程阻塞。挂起比阻塞节省内存,且支持多个并行操作

  • 内存泄露更少:使用结构化并发机制在一个作用域内执行多个操作

  • 内置取消支持:取消功能会自动通过正在运行的协程层次结构传播

  • Jetpack 集成:许多 Jetpack 库都包含提供全面协程支持的扩展。某些库还提供自己的协程作用域,可供你用于结构化并发

协程的使用

https://juejin.cn/post/6908271959381901325

写的太好了,直接看吧。

相关推荐
珠峰下的沙砾几秒前
在kotlin中如何使用像java中的static
kotlin
晨非辰1 小时前
#C语言——刷题攻略:牛客编程入门训练(十一):攻克 循环控制(三),轻松拿捏!
c语言·开发语言·经验分享·学习·visual studio
励志码农3 小时前
JavaWeb 30 天入门:第二十三天 —— 监听器(Listener)
java·开发语言·spring boot·学习·servlet
天高云淡ylz3 小时前
子网掩码的隐形陷阱:为何能ping通却无法HTTPS访问
开发语言·php
@小匠3 小时前
Spring Cache 多租户缓存隔离解决方案实践
java·spring·缓存
智码看视界4 小时前
老梁聊全栈系列:(阶段一)架构思维与全局观
java·javascript·架构
黎宇幻生4 小时前
Java全栈学习笔记33
java·笔记·学习
希望20175 小时前
Golang Panic & Throw & Map/Channel 并发笔记
开发语言·golang
朗迹 - 张伟5 小时前
Golang安装笔记
开发语言·笔记·golang