kotlin 测试协程嵌套

测试下协程嵌套:

Kotlin 复制代码
private fun test1() { // 测试协程的嵌套
        lifecycleScope.launch {
            Log.d("zxzx", "启动parent协程,线程:${Thread.currentThread().name}")
            val parent = lifecycleScope.launch {
                Log.d("zxzx", "parent协程开始执行,线程:${Thread.currentThread().name}")
                launch {
                    Log.d("zxzx", "子协程1开始, 线程:${Thread.currentThread().name}")
                    delay(1000)
                    Log.d("zxzx", "子协程1完成, 线程:${Thread.currentThread().name}")
                }
                launch {
                    Log.d("zxzx", "子协程2开始, 线程:${Thread.currentThread().name}")
                    delay(2000)
                    Log.d("zxzx", "子协程2完成, 线程:${Thread.currentThread().name}")
                }
            }
            parent.join()
            Log.d("zxzx", "parent协程完成。")
            Log.d("zxzx", "你以为湾仔你最大?我乌鸦偏偏不把你放在眼里。")
        }
    }

运行,打印:

ok. join函数能让父协程等待子协程完成。

相关推荐
天意__39 分钟前
Android手机上部署Linux服务器 在Termux里安装Ubuntu
android·linux·服务器
恋猫de小郭1 小时前
Flutter Android 改动:APK 不再允许通过 Intent 动态修改 Engine 参数
android·前端·flutter
修船大队长2 小时前
KL15 高电平请求 FullCom:AUTOSAR 项目调用流程
android·java·服务器
三少爷的鞋2 小时前
毁掉 Android 现代架构,只需要一个自定义的“FlowBus”
android
程序猿追11 小时前
kotlin-retry 接入鸿蒙后,怎样确认它真的会停止重试
开发语言·kotlin·harmonyos
jack1868914 小时前
安卓手机忘记锁屏密码怎么办? 无需密码也可解锁
android·智能手机
应用市场17 小时前
不用一张图片的像素小游戏:小人是字符串,房间是矩形,平衡靠两千个假玩家
android·kotlin·游戏开发
stevenzqzq17 小时前
android 对渠道的理解
android
QEasycloud18 小时前
BOM接口抛转失败钉钉通知策略实战教程:MySQL异常日志到钉钉消息的端到端配置
android·mysql·钉钉
AIsoft_868918 小时前
医患交流内容如何做好记录?
android·iphone