在默认调度程序上阅读文档后- https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-dispatchers/-default.html

上面写着,

它得到了JVM和Native上shared个线程池的支持.

我有几个问题要问- 线程池是否在当前进程中的调度器之间共享?或者这个线程池是跨进程共享的吗?换句话说,每个应用程序都有自己的线程池吗?线程池由调度器之间共享的线程组成.如果是,那么这个线程池是在什么时候或如何创建的?当Corouine推出时,它会发生得很慢吗?

谢谢!

推荐答案

very good question

  • 每个进程都有自己的线程和任何进程的线程布尔,没有重新分配给另一个进程,因此调度器在当前进程中共享线程池
  • 当协程程序库被初始化并与Dispatchers.Default关联时,线程布尔被初始化
  • 在协程框架的初始化过程中,线程boolEager 而不是懒惰地进行了初始化

有一本关于协同 routine 和异步编程的好书,非常好Kotlin Coroutine with tutorial我建议你go 读一读

Android相关问答推荐

Jetpack Compose make父级图像填充高度

为什么R8不混淆某些类?

替换- prop -中的值(adb shell getprop)

Jetpack编写使用自定义主题覆盖库中主题部分

如何消除脚手架和顶杆(material 3)更改 colored颜色 时的延迟?

Yarn 机器人导致活动未找到,但Gradlew Run工作正常

Android Jetpack Compose调用view-model函数仅一次

在一列中垂直对齐两个框

判断文本视图是否为单行

Jetpack Compose:根据盒子中的最大视图固定宽度和高度

在c中更新MVVMCross中TextView的Alpha#

SQLite Kotlin 问题 - 没有数据库

如何在每次显示可组合项时执行代码(并且只执行一次)

如何使用滑行加载媒体的专辑封面?

当父布局的背景为浅色时,Android ProgressBar 背景 colored颜色 变为灰色

Kotlin Multiplatform Mobile targetSdk 已弃用

Android Studio 复制类 kotlin

在事件中使用 Context/Toast 时不需要的重组 - Jetpack Compose

GridLayout 和 GridView 有什么好用和区别

Android Studio (Kotlin):无法启动活动