LvKang-insist / Android-day-issues

Make progress every day
2 stars 0 forks source link

2023/8/6:说一下 Kotlin 协程 #53

Open LvKang-insist opened 1 year ago

LvKang-insist commented 1 year ago

Kotlin 协程是 Android 官方推荐使用的异步解决方案,我们可以使用协程来简化异步执行的代码,相比与线程的话,他不依赖于系统的调度,而是由用户控制协程的执行,所以相比与线程会更加轻量好用一些,另外协程的通信方式比线程更加灵活。 协程的特点: 1,轻量,可以在单个线程上运行多个协程,并且不会影响当前线程的正常执行,因为协程支持挂起。 2,结构化并发,具有父协程和子协程的概念,可以嵌套使用,并且具有多种作用域,顶级,协同,主从作用域。 3,内置取消支持,取消操作会在协程的整个结构中传播,需要注意的是 cancle 之后协程并不会立即取消,而是在合适的时候才会判断是否调用了取消。 4,Jetpack 集成,很多的 JetPack 库都提供了协程的全面支持,例如 viemodule ,lifecycle 等