【问题标题】:Does Scala Async do everything that Clojure's core.async does?Scala Async 能做 Clojure 的 core.async 所做的一切吗?
【发布时间】:2013-11-23 09:51:13
【问题描述】:

this presentation Haller 中谈到了 Scala Async。

this presentation - Rich Hickey 谈到 Clojure 的 core.async。

两者似乎都是宏 - 但 Scala Async(如果我错了,请纠正我)似乎没有 CSP 或通道的概念。

Scala Async 和 Clojure 的 core.async 有什么区别?

【问题讨论】:

    标签: scala asynchronous macros clojure


    【解决方案1】:

    core.async 的 go 宏为“通道”提供非阻塞 put 和 take 操作,否则会阻塞多对多队列。

    Scala Async 的async 宏为普通Futures 的结果提供了非阻塞等待操作。

    所以答案是否定的。 core.async 是关于并发进程之间的通信,而 Scala Async 处理只是等待并发进程完成。 core.async 可以轻松模拟 Scala Async 的功能,反之则不行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-25
      • 2017-10-13
      • 1970-01-01
      • 1970-01-01
      • 2011-02-27
      • 2013-10-22
      相关资源
      最近更新 更多