kotlin async异步协程构建器

测试下async异步协程构建器:

Kotlin 复制代码
private fun testAsync() {
        Log.d("zxzx", "onCreate方法执行testAsync函数,线程:${Thread.currentThread().name}")
        lifecycleScope.launch{
            val deferred1 = async(Dispatchers.IO) {
                Log.d("zxzx", "task1 模拟网络请求开始,线程:${Thread.currentThread().name}")
                delay(2000)
                "结果1"
            }
            val deferred2 = async(Dispatchers.Default) {
                Log.d("zxzx", "task2 模拟网络请求开始,线程:${Thread.currentThread().name}")
                delay(3000)
                "结果2"
            }

            // 等待两个异步任务都完成,并获取结果
            val result1 = deferred1.await()
            val result2 = deferred2.await()

            Log.d("zxzx", "最终结果:$result1 + $result2, Thread: ${Thread.currentThread().name}")
        }
        Log.d("zxzx", "onCreate方法结束执行,线程:${Thread.currentThread().name}")
        Log.d("zxzx", "伤哉龙受困,不能越深渊。上不飞天汉,下不见于田。蟠居于井底,鳅鳝舞其前。藏牙伏爪甲,嗟我亦同然!")
    }

在onCreate方法中调用,运行打印:

ok. async很适合这种异步调用。

相关推荐
程序员陆业聪10 小时前
Shadow核心原理:壳子Activity与代理机制的精妙设计
android
plainGeekDev11 小时前
Android 开发者再不转Kotlin,真的来不及了
android·kotlin
赏金术士11 小时前
第五章:数据层—网络请求与Repository
android·kotlin·compose
初雪云11 小时前
让安卓发版再简单一点,体验一键自动化发布
android·运维·自动化
jushi899912 小时前
抖音APP抖音助手增强版 内置逗音小手 支持无水印下载/音频提取/去广告等功能
android·智能手机·音视频
plainGeekDev12 小时前
Android 专家岗 Kotlin 面试题:能答出这些,说明你对语言设计有自己的理解
android·kotlin
plainGeekDev12 小时前
Android 资深岗 Kotlin 面试题:只会用协程不够,你得懂它为什么这么设计
android·kotlin
StarShip12 小时前
第一阶段:应用层视图绘制
android
StarShip12 小时前
第二阶段:RenderThread 渲染处理
android