【问题标题】:Advantages of actors over futures演员相对于期货的优势
【发布时间】:2011-07-13 17:12:29
【问题描述】:

我目前在 Futures 编程,我对演员很好奇。我想听听经验丰富的声音:

  • 演员相对于期货有什么优势?
  • 什么时候应该使用一个而不是另一个?

据我所知,演员持有状态而期货没有,这是唯一的区别吗?所以如果我有真正的不变性,我不应该关心演员吗?

请赐教:-)

【问题讨论】:

  • Java 或 Scala,但我想这个问题与语言无关;我错了吗?
  • 好吧,只有极少数的语言同时具备这两种功能,如果有的话,大多数只做一种或另一种,而且实现的质量差异很大。我认为对此没有有意义的不可知论回应。
  • 假设 scala 演员和 java 期货,你能提供一些关于权衡的信息吗?
  • 我发现这篇文章在谈到演员和期货之间的关系时非常清晰(在 Scala 中):chrisstucchio.com/blog/2013/actors_vs_futures.html

标签: actor future


【解决方案1】:

一个重要的区别是参与者通常具有内部状态,因此理论上它们是不可组合的;请参阅 thisthis 博客文章以详细说明一些问题。然而,在实践中,它们通常在命令式和纯函数式方法之间提供一个最佳点。因此,如果可能,建议坚持仅使用 future 进行编程,但如果消息传递模型更适合您的问题域,请随意使用 actor。

【讨论】:

猜你喜欢
  • 2017-03-19
  • 2010-12-23
  • 2015-07-23
  • 2011-02-26
  • 1970-01-01
  • 2012-05-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多