目录

CoroutineScope Dispatchers.IO异步操作async返回函数,Kotlin

CoroutineScope Dispatchers.IO异步操作async返回函数,Kotlin

Kotlin 复制代码
import kotlinx.coroutines.*

fun myFun(a: Int, b: Int, retFun: (sum: Int) -> Unit) {
    println("分支myFun开始... ${System.currentTimeMillis()}")
    val task = CoroutineScope(Dispatchers.IO).async(start = CoroutineStart.LAZY) {
        println("myFun delay... ${System.currentTimeMillis()}")
        delay(3000)
        println("myFun delay end ${System.currentTimeMillis()}")
        a + b
    }

    CoroutineScope(Dispatchers.IO).launch {
        println("myFun launch... ${System.currentTimeMillis()}")
        val sum = task.await()
        retFun(sum)
        println("myFun retFun ${System.currentTimeMillis()}")
    }
    println("分支myFun结束 ${System.currentTimeMillis()}")
}

fun main(args: Array<String>) {
    println("主流程开始 ... ${System.currentTimeMillis()}")
    myFun(1, 2) { sum ->
        println("主流程等待结果返回...")
        println("main : $sum ${System.currentTimeMillis()}")
        println("主流程结果返回")
    }
    println("主流程结束 ${System.currentTimeMillis()}")


    Thread.sleep(5000)
}

主流程开始 ... 1703757127994

分支myFun开始... 1703757127995

分支myFun结束 1703757128042

主流程结束 1703757128042

myFun launch... 1703757128045

myFun delay... 1703757128046

myFun delay end 1703757131050

主流程等待结果返回...

main : 3 1703757131052

主流程结果返回

myFun retFun 1703757131052

Process finished with exit code 0

本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
Yang-Never13 小时前
Open GL ES ->GLSurfaceView在正交投影下的图片旋转、缩放、位移
android·开发语言·kotlin·android studio·贴图
XH27618 小时前
Kotlin infix函数用法详解
前端·kotlin
XH27618 小时前
Kotlin AsyncTask用法详解
前端·kotlin
stevenzqzq20 小时前
kotlin中主构造函数是什么
开发语言·python·kotlin
tangweiguo0305198720 小时前
(Kotlin) Android使用DialogX实现iOS风格底部弹窗(带Toggle开关)
android·kotlin
wangz7621 小时前
kotlin,Jetpack Compose使用Scaffold布局,包含底部导航栏
android·kotlin·jetpack compose·navigationbar
fundroid21 小时前
Anroid Kotlin:如何正确回收 Closeable 资源
android·kotlin·客户端
QING6181 天前
Kotlin windowedSequence用法及代码示例
android·kotlin·源码阅读
QING6181 天前
Kotlin MatchResult.Destructured用法及代码示例
android·kotlin·源码阅读
居然是阿宋2 天前
Kotlin 集合函数:map 和 first 的使用场景
kotlin