【发布时间】:2012-07-06 13:59:25
【问题描述】:
问题
Dart 中的隔离会在多核环境中利用所有可用内核并行运行,还是会在单核上多路复用?
背景
Google 将 Dart 编程语言中的 isolates(单线程并发单元)描述为在主堆栈上运行的“轻量级线程”,没有阻塞。
因此,在我看来,它只能在单核上多路复用,而不能在 SMP、双核、多核或集群环境中的多个核上并行运行。
不过,我找不到任何关于此的信息,因此我提出了一个谦虚的问题。
【问题讨论】:
-
您是否进行了任何实验来解决这个问题?
-
它没有自己的堆栈,它不是线程。更像协程,也许吧?如果“线程”不能阻塞,它就不能等待 I/O 或其他线程。我看不出这样的装置有什么好处
-
是的,确实不是线程。我刚刚完成了一些测试(在我问这个问题之前我不运行它们是愚蠢的)。
标签: multithreading parallel-processing dart dart-isolates