前言
在刚接触协程的时候,就产生了一个疑问,协程到底有没有创建线程,如果有,那它和线程池有什么区别?如果没有,为什么在android的主线程中不会 阻塞,了解Android源码的 应该猜到了,肯定是创建了子线程,不然 就会报异常了。那协程又是如何保证任务能切换到主线程呢? 下面就带着这几个问题,来分析协程的源码
示例
用下面的示例 模拟获取token,请求网络的过程。顺序执行,不会阻塞当前线程,
fun main() {
GlobalScope.launch {
println("开始 ")
val token