美文网首页
kotlin协程

kotlin协程

作者: jsync | 来源:发表于2021-03-11 18:46 被阅读0次

    1:什么是协程,kotlin协程是什么。

    2:kotlin开启协程的方式

    launch async+await
    两者最主要区别

    • 异常处理launch内部可能会抛出异常,因此需用户手动进行处理。而async默认不会抛出异常,因为它会认为你最终必须调用await来获取结果,因此,async内部如果出现异常,用户需要在await处进行捕获。

    • 返回值:一个最重大的区别就是,launch函数返回的是一个Job对象,该对象主要用于取消协程运行,而async函数返回的是一个Deferred对象,该对象不仅可以用于取消协程,更重要的是可以获取异步任务返回结果!这是相当有用的一个特性,如下代码所示:

    协程作用域的概念
    CoroutineScope
    GlobalScope
    MainScope

    创建子协程域
    coroutineScope{}
    这个api主要用于方便地创建一个子域,并且管理域中的所有子协程。注意这个方法只有在所有 block中创建的子协程全部执行完毕后,才会退出
    supervisorScope{}
    区别是supervisorScope 在子协程失败时不影响其他子协程,而coroutineScope是将异常抛出。

    suspend
    这种函数只能在另一个suspend函数或者协程里面被调用。

    3:kotlin协程的简单用法

    image.png image.png
    image.png

    4:异常处理

    相关文章

      网友评论

          本文标题:kotlin协程

          本文链接:https://www.haomeiwen.com/subject/flawtltx.html