Scala 中的执行上下文是什么?

2024-03-07

我是 Scala 新手,正在尝试使用一些并行结构(Future尤其)。

我发现有一个类型的隐式参数ExecutionContext。 IMO,它类似于(并且可能比)线程池的概念。我试图通过学习它文档 http://docs.scala-lang.org/overviews/core/futures.html,但我找不到任何清晰详细的介绍。

谁能解释一下 Scala 中的执行上下文到底是什么?向语言引入执行上下文的目的是什么?


基本思想非常简单:您有一个将在某个时刻执行的回调。它将在哪个线程上执行?现在的那个?一个新的?泳池里的一个?这是由执行上下文决定的。默认值(ExecutionContext.global)使用全局池中的线程(线程数量由您拥有的 CPU 核心数决定)。

在其他情况下,您可能需要使用不同的上下文。例如,Akka Actor 可以使用其调度程序作为执行上下文。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Scala 中的执行上下文是什么? 的相关文章

随机推荐