runblocking和coroutinescope有什么区别吗,能否说明一下这两个的使用场景是什么呢?

来源:12-5 案例:仿官方框架实现 runBlocking

weixin_慕丝4457541

2024-06-23

写回答

1回答

bennyhuo

2024-06-25

runblocking 可以在任意函数当中调用,会阻塞当前函数所在的线程。

coroutineScope 需要在协程(也就是 suspend 函数)当中调用,如果 coroutineScope 当中的代码挂起,那么调用 coroutineScope 的调用处也会挂起。


区别:runBlocking 可以在普通函数当中创建一个阻塞的协程,只有这个协程执行完才会返回到 runBlocking 调用处。coroutineScope 只是在协程中新创建了一个作用域。

1
0

学会Kotlin 突破开发语言瓶颈

如果有一门语言可以取代Java,那么它一定是Kotlin。

1760 学习 · 481 问题

查看课程