Scala Async是否完成了Clojure';s core.async做什么?

Scala Async是否完成了Clojure';s core.async做什么?,scala,asynchronous,macros,clojure,Scala,Asynchronous,Macros,Clojure,在本文中,Haller讨论了Scala异步 In-Rich Hickey谈到Clojure的core.async 两者看起来都是宏,但Scala Async(如果我错了,请纠正我)似乎没有CSP或通道的概念 Scala Async和Clojure的core.Async之间有什么区别?core.Async的go宏为“通道”提供非阻塞的put和take操作,否则会阻塞多对多队列 Scala Async的Async宏为普通Futures的结果提供非阻塞等待操作 所以答案是否定的。core.async是

在本文中,Haller讨论了Scala异步

In-Rich Hickey谈到Clojure的core.async

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


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

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

Scala Async的
Async
宏为普通
Future
s的结果提供非阻塞等待操作

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