“吹Kotlin协程的,可能吹错了(1),实现原理分析

这篇博客介绍了Kotlin协程的原理和使用,通过对比传统的异步回调,展示了协程如何简化Android开发中的并发处理。文章探讨了非阻塞式挂起的概念,解释了协程如何在不阻塞主线程的情况下执行任务,并通过实例展示了协程如何优化接口调用的性能。虽然协程并不一定在性能上优于线程池,但它提供了更简洁的代码和更好的用户体验。
摘要由CSDN通过智能技术生成

一个新的技术的出现,大家往往从学习到真正在项目中实践往往需要一个过程,这里面有非常多的因素,有个人学习成本的因素,有公司方面的因素等等,但是最重要的,其实还是这个新的技术,到底是不是真的有取代我们现有技术的必要。接下来我就带大家一起来用用协程吧。

okhttp异步请求

这是我们常规的一个异步请求,通过回调的方式来处理请求结果

fun enqueue() {    ApiService.enqueue("/test", object : Callback {
override fun onResponse(call: Call, response: Response) {
runOnUiThread {
//切到主线程更新UI
tv_content.text = response.body.toString()                  
}
}

override fun onFailure(call: Call, e: IOException) {
}
})
}

使用协程的okhttp同步请求

这里先记住一句话,我们什么时候要用到协程的?

需要切换线程的时候要用到协程

所以想切到什么线程,就用GlobalScope.launch(Dispatchers.XX)切一下就好了,代码如下

fun execute() {
GlobalScope.launch(Dispatchers.Main) {
//切到子线程执行任务
var result

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值