kotlin的定义
对我来说就是跟线程一样的东西,是个线程框架,让开发者更好的处理并发,以及解决回调问题
协程的使用
在app的build.gradle中添加依赖
kotlin {
experimental {
coroutines 'enable'
}
}
dependencies {
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.0'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.0'
}
线程切换
创建协程,并指定运行的线程
GlobalScope.launch (Dispatchers.IO){//切换到IO线程执行
saveToDatabase(data)
}
GlobalScope.launch (Dispatchers.Main){//切换到Main线程执行
updateViews(data)
}
结合使用
GlobalScope.launch (Dispatchers.Main){
val token = api.getToken()//网络请求:后台线程
val user = api.getUser(token)//网络请求:后台线程
nameTv.text = user.name //更新UI&